Data management apparatus and method thereof

ABSTRACT

The present invention provides a data management apparatus (i-Win (trademark)) which carries out centralized management of data containing data on each product during the management of product data having different data items to be handled and which has increased maintenance-ability in system and program(s). 
     A data storage part  13  stores transaction data (contract data) including class ID (logic key) and data contents ID (variable). A data definition part  17  records data contents IDs and data contents (clause data) for each clause ID. A data processing means  15  acquires combination data of a data contents ID and data content from the data definition part  17  (definition body) in accordance with a class ID recorded in the data storage part  13  and performs processing which relates to data contents of a predetermined data item (contract condition). In this way, centralized management of plurality of product data having different product features from its clause and prospectus and the like can be carried out.

CROSS REFERENCE TO RELATED APPLICATIONS

All the content disclosed in Japanese Patent Application No. 2004-299055(filed on Oct. 13, 2004), including specification, claims, drawings andabstract and summary is incorporated herein by reference in itsentirety.

FIELD OF THE INVENTION

This invention relates to a data management apparatus managing aplurality of data in which data items to be managed are respectivelydifferent and a method thereof.

BACKGROUND ART

Generally, diversification of data class to deal with may produce adifference in data items to be managed for every data class in datamanagement. For example, if the class of product is diversified whenmanaging product data, since the data items of the product managed inconnection with this will be diversified, it is necessary to managevarious data items for every goods kind.

When dealing with a plurality of the product data having a wide varietyof product features with difference in the data item to be managed usinga computer device, there is a method of managing the product data of allclasses generated during a transaction using one record format. In thiscase, since the data item required for all products is set upbeforehand, it may just refer to one database for the operating programwhich processes product data.

However, a record format which defines a data item need to be changedwhenever change in product class or a data item arises, if the productdata of all classes is managed using one record format, and a problemwith complication of work for changing such change is expected. Even ifit is the data item used only for a specific product, a region must besecured as a data item of all other products, and there is a problemthat a memory region cannot be used effectively as a whole.

In order to solve such problems, there exist the following conventionstechnologies such as (1) and (2). In addition, the followingconventional technology (3) exists as the case in which plural classesof products which have the various product features are dealt.

(1) Product class codes for specifying class of product and productcontent codes for identifying content of product are recorded intransaction data, and a product management table in which productcontents corresponding to the product codes are classified in aplurality of data items and stored is created for each product class. Abusiness application program for processing the transaction dataspecifies the product management table in accordance with the productclass codes and further acquires each of data items as the productcontents in accordance with the product content codes.

Consequently, what is necessary is to change only the product managementtable, even when there are some changes on the product class. Similarly,it is necessary to change only the product management table even whendata items on the product management table have been changed. In thisway, no change is required for the record format of the transactiondata.

FIG. 18 illustrates an example of the conventional technology (1)described in the above. A is transaction data managing insurancecontracts by which data of policy number 1801, of insurance premiums1802, of insurance period 1803, of clause code 1804 and of types 1805and so on are managed. In this case, the clause code 1804 is data forspecifying a product class of an insurance product. B is a table (awhole life insurance table) managing data item of “whole life insurance”that is product content corresponding to the insurance product whoseclause cord 1804 is “001”, and also manages data of step payment period1807 and of step payment ratio 1808. C is a table managing (annuityinsurance table) data item of “insurance annuity” that is productcontent corresponding to insurance product whose clause code is “0002”,and also manages data of annuity class 1811 and of annuity payment class1812 for each type 1809.

Hence, even if it is the case where a new insurance instrument isadditionally introduced by preparing the managing table which becameindependent every clause code 1804 which is a product code, andconstituting so that the content of the product of the management tablecan be specified in accordance with the type 1805, additional creationof the product managing table corresponding to this can be carried out,and change of a record format of the transaction data can be avoided.

In an insurance product management system, there exists a case in whicha desired product information is acquired by recording a basic keycommonly used for products and sub-keys each having difference inmeaning for products on a product information table and by conducting asearch for the product information table in accordance with the sub-keysin a program by which products are handled (see patent document 2, forexample).

(2) The data related to the data item corresponding to a desired productclass is acquirable by establishing free definition items into thetransaction data and by redefining formats within the free definitionitems for each product class.

Consequently, change in the system can be done by just varying themethod of redefining the free definition items even if it is the casewhere change arises in the product class.

FIG. 19 illustrates an example of the conventional technology (2)described in the above. A is transaction data managing insurancecontracts by which data of policy number 1901, of insurance premiums1902, of insurance period 1903, of clause code 1904 and of freedefinition item 1905 and so on are managed. In this case, the freedefinition item 1905 is an item for redefining and using a productcontent related to the insurance product specified by the clause code1904. B is a part of a COBOL (Common Business Oriented Language) programfor redefining and using the free definition item 1905. In other words,with the program, data responding to the product class corresponding toa desired clause code can be handled by defining the free definitionitem 1905 as a FILLER item of X(100) and then by defining the FILLERitem for product class using a REDEFINE clause (see non-patent document1, for example). A redefining description 1911 is for redefining data ofits product class “whole life insurance” and similarly anotherredefining description 1912 is for redefining data of its product class“annuity insurance”.

Thus, even if it is the case where a new insurance product isadditionally introduced, by constituting so that the free definitionitem may be redefined every clause code 1904 which is a product class,the redefinition description corresponding to this can be added andchange of a record format of the transaction data can be avoided.

(3) A system in which a data value of a desired data item in a desiredproduct class is acquired by creating a product database respectivelydefining data items to be handled as constituent elements and bycarrying out operations such as switching one of the product databaseused in a business application program implementing processing theproduct data and the database into which data related to the constituentelements is recorded, is known to the public (see patent document 1, forexample).

-   [Patent document 1] Patent laid-open publication Hei10-334160-   [Patent document 2] Patent laid-open publication Hei08-329142-   [Non-patent document] Pages 143 to 145 of “Introduction to COBOL”    published on Apr. 1, 1993 by OHMU Publishing under collective    writing of NISHIMURA/UEMURA

In the conventional technology (1), however, it is necessary to newlyprovide a managing table in the case of adding product class and alsonecessary to change the format of the managing table when data item ofthe product class is changed. In this case, the operator needs to set upeach of the types while ensuring consistency on each of data contentsamong each of data items managed at the managing table for each productclass.

For example, D shown in FIG. 18 is a table (prescheduled interest-ratesensitive annuity insurance annuity table) managing data items of“prescheduled interest-rate sensitive annuity insurance” thatcorresponds to an insurance product whose clause cord 1804 is “003” anddata of annuity class 1814, of annuity payment period 1815 and of ratioreview period 1816 are managed for each type 1813. When the prescheduledinterest-rate sensitive annuity insurance annuity table is added, theoperator carries out operations in accordance with the annuity insurancetable having similar data items. Specifically, the prescheduledinterest-rate sensitive annuity insurance annuity table D is obtained byadding a line of the ratio review period 1816 to the duplicated annuityinsurance table C.

It is assumed that there exist two kinds of data for the ratio reviewperiod 1816 such as “review every 5 years” and “review every 10 years”.In this case, the ratio review period 1816 can be added to each of linerecord of the duplicated annuity insurance table C. The operator,therefore, needs to set up the type 1813 corresponding to each of theline records while ensuring consistency on each combination of theannuity payment period 1815 and ratio review period 1816. Suchadditional work on the managing table requires great amount of attentionas well as work, so that the work become unexpectedly complicated.

In the conventional technology (2), there exist a problem that themaintenance-ability of the business application program decreases duringaddition/alteration work of product class because a huge amount ofalteration work is required based on the differences in product class inthe business application program which handle the transaction data.

For example, as shown in FIG. 19, it is necessary to add anotherredefining description 1913 on the prescheduled interest-rate sensitiveannuity insurance while adding judgment logic where the article code1904 represents the prescheduled interest-rate sensitive annuityinsurance. Further, a processing logic on the product features in thecase of dealing the prescheduled interest-rate sensitive annuityinsurance is need to be added. In addition, a system testing needs to beconducted by re-compiling the COBOL program after these works. Themaintenance-ability of the business application program decreasesbecause those works on the business application program are stillrequired.

In the conventional technology (3), the formats under transaction needto be changed for each product class because the combination of theconstituent element used for every product class differs. As aconsequence, unification of the transaction data becomes difficult andthere is a problem that a system configuration is complicated.

An object of the present invention is to provide a data managementsystem capable of (1) doing a system change without imposing a heavyburden on the operator, (2) avoiding decrease of maintenance-ability ofthe business application program and (3) making unification of thetransaction data easy and making the system configuration simple.

SUMMARY OF THE INVENTION

(1)(2)(57) In the data management apparatus according to the presentinvention comprising:

-   -   a data storage part storing at least a data ID, a class ID and a        data content ID;    -   a data definition part recording data content corresponding to        the data content ID for each data item; and    -   data processing means for implementing processing of determining        a data content corresponding to a predetermined data item of a        class ID representing a data class specified by the data ID in        accordance with a data content ID stored in the data definition        part which conform to the data content ID recorded in the data        storage part.

It is, therefore, possible to record data contents in the data item tobe managed using a data content ID. In this way, system configurationcan be simplified as a result of managing with the same format in anintegrated fashion even when data has different data item.

(3) In the data management apparatus according to the present invention,the data definition part stores a data item to be managed for each classID, and wherein the data processing means specifies a data itemcorresponding to the class ID.

In this way, it is possible to easily specify a data item correspondingto the data content ID of the recorded data.

(4) In the data management apparatus according to the present invention,the data storage part respectively stores a plurality of data contentIDs correspondingly to a plurality of data item numbers commonly usedfor each combination of a data ID and the class ID, and wherein the datadefinition part stores data items respectively corresponding to aplurality of data item numbers, for each class ID.

In this way, data contents corresponding to a plurality of data itemscan be managed.

(5) In the data management apparatus according to the present invention,the data definition part stores at least two or more of data contentscorresponding to the data content ID, for each data item correspondingto a data item number stored for each class ID.

Consequently, a data content selected from a plurality of data contentsfor one data item can be managed.

(6) In the data management apparatus according to the present invention,the data processing means acquires all combinations of data content IDsand data contents recorded for data items corresponding to data itemnumbers stored by the data definition part,

-   -   and wherein the data processing means determines a data content        ID corresponding to one of data content corresponding to a        predetermined data content ID and a data content ID        corresponding to a predetermined data content in accordance with        combinations of the acquired data content IDs and the data        contents.

It is, therefore, possible to compose information on data item and dataprocessing separately. In this way, there is no need to care about thedata content IDs on data items and/or data contents at the dataprocessing means.

(7) In the data management apparatus according to the present invention,the data definition part describes a processing code for executingprocessing for handling one of a data content ID and a data contenttogether with a combination of a data ID and a data content, for eachdata item,

-   -   wherein the data processing means acquires from the data        definition part the processing code together with the        combination of the data content ID and the data content,    -   and wherein the data processing means determines a data content        ID corresponding to one of data content corresponding to a        predetermined data content ID and a data content ID        corresponding to a predetermined data content in accordance with        a combination of the acquired processing code, the data content        ID and the data content.

Consequently, one of the data content ID and the data content canselectively be determined in accordance with the processing code and thecombination data to be set for each class ID. Additionally, it ispossible to compose information on data item and data processingseparately.

(8) In the data management apparatus according to the present invention,the data definition part describes a processing code for checking acombination of data contents corresponding respectively to more than twoclasses of data items,

-   -   wherein the data processing means acquires from the processing        code together with the combination of the data content ID and        the data content,    -   and wherein the data processing means judges whether or not the        combination of the data contents corresponding respectively to        more than the two classes of data items is correct one in        accordance with the acquired processing code and a combination        of the data content ID and the data content.

In this way, more than the two classes of data content IDs can bechecked in accordance with the processing code and the combination dataprior to recording into the data storage part.

(9) In the data management apparatus according to the present invention,the data processing means comprises a main processing part, a processingprogram requesting/execution part requesting a processing program to thedata definition part and executing the program and a processing programgeneration part generating a processing program in accordance with theprocessing code and the combination data,

-   -   and wherein the data definition part comprises a processing code        storage part storing a processing code for implementing        processing of handing data content ID and data content and a        combination data storage part recording a combination of the        data content ID and the data content.

Consequently, processing of determining one of the data content ID andthe data content can be aggregated in the data processing means, as aresult, process of generating a processing program can be aggregated inaccordance with the processing code and the combination data at the datadefinition part.

(10) In the data management apparatus according to the presentinvention, the processing program requesting/execution part of the dataprocessing means comprises a processing program requesting partrequesting a processing program to the processing program generationpart and a processing program execution part executing the processingprogram received from the processing program generation part,

-   -   and wherein the processing program requesting part is composed        as a wrapper program.

It is, therefore, processing of requesting a processing program can beaggregated into one program in the data processing means. Consequently,program processing necessary for data management can be unitized.

(11) In the data management apparatus according to the presentinvention, the data processing means acquires all combinations of datacontent IDs and data contents in all data items stored by the datadefinition part for predetermined class IDs,

-   -   and wherein the data processing means outputs one of the data        content ID and the data content capable of being selected for        each data item of the predetermined class ID in accordance with        a combination of the acquired data content IDs and the data        contents.

Consequently, a screen-image responding to product's features/its clausefor each contract can automatically be generated. The development costsof software development may be reduced because there is no need toprepare screen-image for each product. Additionally, both thecustomization cost for introduction and the maintenance cost for changemay be suppressed in package software industry.

(12) In the data management apparatus according to the presentinvention, the data definition part records a combination of a datacontent ID and data content capable of being selected for each data itemand describes a processing code for executing processing for handlingone of the data content ID and the data content capable of beingselected for all data items of a class ID,

-   -   and wherein the data processing means acquires from the data        definition part the processing code for the predetermined class        ID together with all combinations of data content IDs and data        contents capable of being selected in all data items for        predetermined class IDs and outputs one of the data content ID        and the data content capable of being selected for each data        item of the predetermined class ID in accordance with all        combinations of data content IDs and data contents and the data        contents capable of being selected and the processing code.

17. One of the data management apparatus and the program according toclaim 16, wherein a display formant definition part recording a displayformat for one of the data content ID and the data content for each dataitem is further provided thereto,

-   -   and wherein the data processing means outputs one of the data        content ID and the data content capable of being selected in        accordance with the display format acquired from the display        formant definition part.

18. The data management apparatus and the program according to claim 16,wherein the data processing means acquires data contents correspondingto all data items for a class ID of the data ID in accordance with theclass ID and the data content ID of a predetermined data ID stored inthe data storage part and outputs one of the data content ID and thedata content capable of being selected using the acquired data contentas an initial value

Consequently, a screen-image corresponding to product's features/itsclause for each contract can automatically be generated. The developmentcosts of software development may be reduced because there is no need toprepare screen-image for each product. Additionally, both thecustomization cost for introduction and the maintenance cost for changemay be suppressed in package software industry.

(13) In the data management apparatus according to the presentinvention, a display formant definition part recording a display formatfor one of the data content ID and the data content for each data itemis further provided thereto,

-   -   and wherein the data processing means outputs one of the data        content ID and the data content capable of being selected in        accordance with the display format acquired from the display        formant definition part.

It is, therefore, display format of data may be designated in desiredconditions. In this way, a highly-flexible image-screen design can berealized depending upon the environment for the usage and/or their tastefor companies and users.

(14) In the data management apparatus according to the presentinvention, the data processing means acquires data contentscorresponding to all data items for a class ID of the data ID inaccordance with the class ID and the data content ID of a predetermineddata ID stored in the data storage part and outputs one of the datacontent ID and the data content capable of being selected using theacquired data content as an initial value.

In this way, a screen-image corresponding to product's features/itsclause for each contract can automatically be generated at the stage ofindividual adjustment.

(15) In the data management apparatus according to the presentinvention, the data definition part separately records a processing codefor executing processing for handling one of, a combination of the datacontent ID and the data content, and, the data content ID and the datacontent in hierarchy according to the class ID.

As a consequence, management of the combination data and the processingcode can be done hierarchically. This increases the maintenance-abilityon processing codes, data content IDs and data contents.

(16) In the data management apparatus according to the presentinvention, the data storage part records transaction data includingproduct data,

-   -   wherein the data definition part records data representing        feature of a product as data content,    -   and wherein the data processing means determines data content of        a product according to the product data upon receipt of an        instruction for processing to the transaction data.

It is, therefore, possible to carry out unify management of transactiondata containing product data having different data items under the sameformat.

(17) In the data management apparatus according to the presentinvention, the product data is data on a product defined based on aclause,

-   -   and wherein data representing feature of the product is data        representing content thereof defined in the clause.

It is, therefore, possible to carry out unify management of transactiondata under the same format even when data relating to products havingcomplicated data item structure to be defined its coverage dependingupon clause.

(18) In the data management apparatus according to the presentinvention, the data definition part separately records a processing codefor executing processing for handling one of data content correspondingto the data content ID, the data content ID and data content inhierarchy defined respectively by product category in which a productdetermined based on the clause belongs thereto, a class of clause and aversion of clause.

Consequently, management of the combination data and the processing codecan be done under each hierarchy of product category, clause class andclause version. In this way, data on life insurance policy can bemanaged easily and effectively even when such data is composed ofcomplicated contract conditions.

(19) In the data management apparatus according to the presentinvention, the class of clause in the data definition part is composedof a company code representing nature of a company and a clause coderepresenting class of clause for the company.

It is, therefore, possible to carry out unify management of product datain a plurality of companies, using one data management apparatus. Inthis way, the data management apparatus according to the presentinvention can be applied to outsourcing businesses and/or ASPbusinesses.

(20) In the data management apparatus according to the presentinvention, a group definition part recording a set-up condition ofpredetermined data for each group combining a plurality of class IDs isfurther provided thereto.

Consequently, set-up conditions of data to be recorded on the record canbe imposed for each predetermined group composed of combination of twoor more records. In this way, the consistency of data within the recordcan be maintained.

(21) In the data management apparatus according to the presentinvention, the data processing means specifies the group combining aplurality of class IDs according to the data ID,

-   -   and wherein processing for determining whether or not a data        content ID to be stored in the data storage part is recordable        in accordance with a set-up condition of the predetermined data        recorded in the group definition part.

It is, therefore, possible to check the consistency between the recordsin accordance with the data content ID.

(22) In the data management apparatus according to the presentinvention, the set-up condition of the predetermined data includes adata content ID capable of being recorded in the data storage part and aprocessing code for checking whether or not the predetermined datacontent ID conforms to the data content ID capable of being recorded inthe data storage part.

It is, therefore, possible to check the consistency of data between therecords in accordance with the data content ID and the processing code.

(23) In the data management apparatus according to the presentinvention, the set-up condition of the predetermined data includes datacontent corresponding to data content ID storable in the data storagepart and a processing code for checking whether or not the predetermineddata content has data content corresponding to the data content IDrecordable in the data storage part.

It is, therefore, possible to check the consistency of data between therecords in accordance with data content corresponding to the datacontent ID and the processing code.

(24) In the data management apparatus according to the presentinvention, the predetermined data content is data acquired from the datadefinition part in accordance with data content ID to be recorded in thedata storage part.

Consequently, a relationship in one of the data content ID and the datacontent unify managed at the data definition part can effectively beused. In this way, an efficient data structure excluding data redundancymay be employed.

(25) In the data management apparatus according to the presentinvention, the data processing means specifies a group composed ofcombining a plurality of class IDs in accordance with the data ID andimplements processing for determining whether or not a data value to berecorded in the data storage part is recordable in accordance with theset-up condition of predetermined data stored in the group definitionpart.

It is, therefore, possible to check the consistency of data between therecords in accordance with the data value.

(26) In the data management apparatus according to the presentinvention, the set-up condition of predetermined data includes conditionof a data value capable of being recorded in the data storage part and aprocessing code for checking whether or not the predetermined data valueconforms to the data value capable of being recorded in the data storagepart.

It is, therefore, possible to check the consistency of data between therecords in accordance with the data value and the processing code.

(27) In the data management apparatus according to the presentinvention, the data processing means specifies a group composed ofcombining a plurality of class IDs in accordance with the data ID andacquires name of the group in accordance with the set-up condition ofpredetermined data stored in the group definition part.

Consequently, name of group for output can be defined for predeterminedgroup unit composed of combinations of a plurality of records. Ininsurance industry assuming that plurality of insurance policies aremade, the name of insurance may be defined for each contract, forexample.

(28) In the data management apparatus according to the presentinvention, the data storage part is composed so that a unique data valueaccording to a data ID is recordable therein,

-   -   wherein the data definition part records a processing code        describing a method of set-up the unique data value for each        class ID,    -   wherein the data processing means specifies a second class ID        relating to a first class ID in accordance with the first class        ID to be recorded in the data storage part and acquires from the        data definition part a processing code according to the        specified second class ID,    -   and wherein the data processing means sets a unique data value        according to the first class ID in accordance with the acquired        processing code.

In this way, information on definition related to other class IDs may bereferred while setting up unique values such as data on date and thelike.

(29) In the data management apparatus according to the presentinvention, the data storage part records transaction data containinginsurance product data defined in accordance with a clause,

-   -   wherein when data on date according to transaction data of a        class ID representing of a rider is set, the data definition        part records a processing code describing a method of set-up        data on date according to transaction data representing the        basic policy corresponding to the rider,    -   and wherein the data processing means sets up the data on date        according to the transaction data of the class ID representing        of the rider in accordance with the processing code acquired        from the data definition part.

As a consequence, unique values such as data on date and the like may beset up using the relationship between the rider and the basic policy inan insurance product. No item(s) undefined in the rider can be handledapplication of the basic policy. In addition, even when the samerider(s) is added to different main clause (the clause of the basicpolicy), a rider may be set up based on the same method of the basicpolicy.

(30) In the data management apparatus according to the presentinvention, the data storage part records a data item ID corresponding toa predetermined data item,

-   -   wherein the data definition part correspondingly records a        combination of data item ID and data content ID with data item        and data content,    -   and wherein the data processing means implements processing of        determining a data item and a data content corresponding thereto        in accordance with a combination of the data item ID and the        data content ID stored in the data definition part which conform        to a combination of the data item ID and the data content ID        recorded in the data storage part.

The versatility of data to be stored in the data storage part can beincreased by recording the data item IDs, data items, data content IDsand data contents so that each of them respectively correspondence oneanother. In this way, effective use of the data area can be done whileexpanding applicable area of the data to be managed handled by the datamanagement apparatus.

(31) In the data management apparatus according to the presentinvention, wherein the data storage part records plural combinations ofdata item IDs and data content IDs.

It is, there fore, possible to define the data items to be managedvaryingly.

(32) In the data management apparatus according to the presentinvention, the data item represents a processing status on data to berecorded at the data storage part.

As a consequence, processing can be implemented smoothly withoutdefining definition of data on the processing state that variesdepending on one of users and data to be managed. In this way, theapplicable scope of the data management may be expanded.

(33) In the data management apparatus according to the presentinvention, the data storage part records an attribution ID representingattribution of data specified by a data ID,

-   -   wherein the data definition part records a combination of a data        item ID and a data content ID for each attribution ID,    -   and wherein the data processing means implements processing of        determining a data item and a data content corresponding thereto        for each attribution ID.

It is, therefore, possible to manage data record having differentattribute IDs on the same database. For example, data records on aplurality of companies can be managed in one data management apparatuswhen a company is identified by an attribution ID, for example.

(34) In the data management apparatus according to the presentinvention, the data storage part records a combination of a data item IDand a data content ID corresponding to a predetermined data item,

-   -   wherein the data definition part records a combination of a data        item ID and a data item,    -   and wherein the data processing means implements processing of        determining a data item corresponding to the data content stored        in the data storage part in accordance with the data item ID        stored in the data definition part which conform to the data        item ID recorded in the data storage part.

In this way, the versatility of data to be stored in the data storagepart can be increased as a result of designating by the data definitionpart a data item corresponding to the data content recorded in the datastorage part.

(35) In the data management apparatus according to the presentinvention, the data storage part records plural combinations of dataitem IDs and data contents.

It is, there fore, possible to define the data items to be managedvaryingly.

(36) In the data management apparatus according to the presentinvention, the data storage part records a combination of a data item IDand a data item for each data-type in the data content to be recorded inthe data storage part.

As a consequence, data with the same data-type previously designated ona database with different data items can be effectively managed.

(37) In the data management apparatus according to the presentinvention, the data-type includes one of a date-type, a value-type, acharacter-type and a binary-type.

In this way, data having different data items can be managed regardlessof their data-type.

(38) In the data management apparatus according to the presentinvention, the data storage part records an attribute ID representingdata specified by a data ID,

-   -   wherein the data definition part records a combination of a data        item ID and a data item for each attribution ID,    -   and wherein the data processing means implements processing of        determining a data item for each attribution ID.

It is, therefore, possible to manage data record having differentattribute IDs on the same database. For example, data records on aplurality of companies can be managed in one data management apparatuswhen a company is identified by an attribution ID, for example.

(39) In the data management apparatus according to the presentinvention, the data processing means comprises a condition set-up partfor setting up a calculation condition used at a calculation processingpart and the calculation processing part for executing predeterminedcalculation processing in accordance with the calculation condition, andwherein access to one of the data definition part and the groupdefinition part is carried out only at the condition set-up part.

Consequently, the difference in the calculation condition between datato be handled can be absorbed by describing in the calculationprocessing part a universal calculation processing using input/outputitems commonly used and by appropriately handling the input/output itemsat the condition set-up part.

(40) In the data management apparatus according to the presentinvention, the data processing means comprises a combination of thecondition set-up part and the calculation processing part for eachcalculation processing.

It is, therefore, possible to quickly respond to variation of process ineach of calculation processing steps and to increase themaintenance-ability.

(41) In the data management apparatus according to the presentinvention, a processing data storage part containing all datapotentially to be handled is further provided,

-   -   and wherein the condition set-up part at the data processing        means implements data input and data output of data to the        processing data storage part.

Consequently, a common interface can be used for each program. In thisway, the development cost can be suppressed by decreasing man-hours indesigning of interface.

(42) In the data management apparatus according to the presentinvention, the processing data storage part comprises transaction data,screen image input data and calculation result data.

It is, therefore, possible to understand the status of processing indata processing while integrating the interface in each program.

(43)(44)(58) According to the present invention, there is provided aninsurance policy data management apparatus for managing data oninsurance policy in which contract conditions to be managed arerespectively different depending on a clause, the apparatus comprising:

-   -   a data storage part storing at least a policy ID for specifying        a insurance policy, a clause ID for specifying a clause of the        insurance policy and a contractual coverage ID for specifying        contractual coverage of the clause;    -   a data definition part recording contractual coverage        corresponding to the contractual coverage ID for each data item;        and data processing means for implementing processing of        determining contractual coverage corresponding to a        predetermined contract condition of insurance policy data        specified by the policy ID in accordance with a contractual        coverage ID stored in the data definition part which conform to        the contractual coverage ID recorded in the data storage part.

Consequently, contractual coverage in the contract condition to bemanaged can be recorded using a contractual coverage ID. In this way,system configuration can be simplified as a result of managing with thesame format in an integrated fashion even when data has differentcontract condition(s).

(45) According to the present invention, there is provided a datastructure for managing data in which data items to be managed arerespectively different, the structure comprising:

-   -   a data storage part storing at least a data ID for identifying        data, a class ID for representing class of data contents        specified by the data ID and a data content ID corresponding to        data content of data item according to the class ID; and    -   a data definition part recording data content corresponding to        the data content ID for each data item.

Consequently, data contents in the data item to be managed can berecorded using a contractual coverage ID. In this way, systemconfiguration can be simplified as a result of managing with the sameformat in an integrated fashion even when data has different dataitem(s).

(46) In the data structure according to the present invention, the datadefinition part stores a data item to be managed for each class ID. Itis, therefore, a data item corresponding to the data content ID of therecorded data can easily be specified.

(47) In the data structure according to the present invention, the datastorage part respectively stores a plurality of data content IDscorrespondingly to a plurality of data item numbers commonly used foreach combination, for each combination of a data ID and a class ID, andwherein the data definition part stores data items respectivelycorresponding to a plurality of data item numbers, for each class ID.Consequently, data contents related to a plurality of data items can bemanaged.

(48) According to the present invention, there is provided a datastructure for managing data in which data items to be managed arerespectively different, the structure comprising:

-   -   a data storage part storing at least a policy ID for specifying        a insurance policy, a clause ID for specifying a clause of the        insurance policy and a contractual coverage ID for specifying        contractual coverage of the clause; and    -   a data definition part recording contractual coverage        corresponding to the contractual coverage ID for each clause ID        and each contract condition.

Consequently, contractual coverage in the contract condition to bemanaged can be recorded using a contractual coverage ID. In this way,system configuration can be simplified as a result of managing with thesame format in an integrated fashion even when data has differentcontract condition(s).

(49) In the data structure according to the present invention, the datastorage part respectively stores a plurality of contractual coverage IDscorrespondingly to a plurality of contract condition numbers commonlyused for each combination of the policy ID and the clause ID, andwherein the data definition part stores contract conditions respectivelycorresponding to a plurality of contract condition numbers, for eachclause ID. As a consequence, contract coverage related to a plurality ofcontract conditions can be managed.

(50)(51)(59) According to the present invention, there is provided aprogram generation apparatus for generating a program for implementingdesignated processing for designated data, the apparatus comprising:

-   -   a data definition part recording a correspondence table        representing correspondence between a data content ID and data        content for each data item;    -   a processing definition part storing a processing code for        processing;    -   correspondence table acquisition means acquiring from the data        definition part a correspondence table on a data item specified        by a class ID contained in the designated data and content of        the designated processing;    -   processing code acquisition means acquiring from the processing        definition part a processing code on the designated processing;        and    -   a program generation means generating a program in accordance        with the acquired correspondence table and the processing code.

In this way, a program for selectively determining one of the datacontent ID and the data content can be generated in accordance with thecorrespondence table of the data content ID and the data content set-upfor each class ID. It is, therefore, possible to compose information ondata item and data processing separately.

(52)(53) According to the present invention, there is provided a programgeneration apparatus for generating a program for implementingdesignated processing for designated data, the apparatus comprising:

-   -   a data definition part recording a correspondence table        representing correspondence between a data content ID and data        content for each data item;    -   a processing definition part storing a processing code for        processing;    -   correspondence table acquisition means acquiring from the data        definition part a correspondence table on a data item specified        by a class ID contained in the designated data and content of        the designated processing;    -   processing code acquisition means acquiring from the processing        definition part a processing code on the designated processing;        and    -   a program generation means generating a program in accordance        with the acquired correspondence table and the processing code.

Consequently, a program for determining data content on the data contentID can be provided while storing the data content in the data item to bemanaged using a data content ID. In this way, system configuration canbe simplified as a result of managing with the same format in anintegrated fashion even when data has different data item (s).

(54)(55) According to the present invention, there is provided ascreen-image generation apparatus for generating a screen-image forimplementing designated processing according to a predetermined classID, the apparatus comprising:

-   -   a data definition part recording a correspondence table        representing correspondence between a data content ID and data        content for each data item;

a processing definition part storing a processing code for processing;

-   -   correspondence table acquisition means acquiring from the data        definition part a correspondence table on a data item specified        by a class ID contained in the designated data and content of        the designated processing;    -   processing code acquisition means acquiring from the processing        definition part a processing code on the designated processing;        and    -   a program generation means generating a program in accordance        with the acquired correspondence table and the processing code;    -   wherein the data processing means generates a display screen by        acquiring all combinations of data content IDs and data contents        recorded for data items corresponding to data item numbers        stored in the data definition part and by outputting one of the        data content ID and the data content capable of being selected        for each data item of the predetermined class ID in accordance        with a combination of the acquired data content IDs and the data        contents.

Consequently, a screen-image corresponding to product's features/itsclause for each contract can automatically be generated. The developmentcosts of software development may be reduced because there is no need toprepare screen-image for each product. Additionally, both thecustomization cost for introduction and the maintenance cost for changemay be suppressed in package software industry.

(56) In the screen-image generation apparatus according to the presentinvention, one of a display format definition part storing displayformats for one of data content IDs and data contents and means foraccessing thereto, for each data item, is further provided, and whereinthe data processing means outputs one of the data content ID and thedata content capable of being selected in accordance with the displayformat acquired from the display format definition part.

It is, therefore, display format of data may be designated in desiredconditions. In this way, a highly-flexible image-screen design can berealized depending upon the environment for the usage and/or their tastefor companies and users.

Correspondence to Embodiments

The term “data storage part storing at least a data ID, a class ID and adata content ID” corresponds to a transaction database 2093 recordingpolicy numbers, clause IDs and variables 1, 2 and so on in theembodiments. The term “a data definition part recording data contentcorresponding to the data content ID for each data item” corresponds toa processing code storage part, a combination data storage part or acombination thereof storing contractual coverage corresponding tocontractual coverage ID for each contract condition in the embodiments.

The term “data processing means for implementing processing ofdetermining a data content corresponding to a predetermined data item ofa class ID representing a data class specified by the data ID inaccordance with a data content ID stored in the data definition partwhich conform to the data content ID recorded in the data storage part”respectively corresponds to a processing program requesting/executionpart 713 in embodiments 1 and 3, either of a processing programexecution part 931 b or a processing program request/execution part 931in the second embodiment, a processing program request/execution part2131 in fourth embodiment, a processing program execution part 3323 infifth embodiment, a processing program generation/execution part 3927 insixth embodiment, a processing program generation/execution part 4627 inseventh embodiment, a processing program generation/execution part 5327in eighth embodiment and a processing program request/execution part6423 in ninth embodiment so on.

The terms “data item to be managed” or “a data item corresponding to theclass ID” corresponds to contract conditions corresponding to variable1, variable 2 and so on recorded in the definition program for eachclause ID in the embodiments. Also, the term “a plurality of data itemnumbers commonly used for each combination” corresponds to “1”, “2”, andson on of the variable 1, variable 2 and so on in the embodiments.

The phrase “all combinations of data content IDs and data contentsrecorded for data items corresponding to data item numbers stored by thedata definition part” corresponds to a combination of all contractualcoverage IDs and contractual coverage recording for contract conditionsin the combination data storage part in the embodiments. The term“combinations of the acquired data content IDs and the data contents”corresponds to a combination of the contractual coverage ID and thecontractual coverage recorded for each contract condition in thecombination data storage part in the embodiments.

The term “a processing code for executing processing for handling one ofa data content ID and a data content” corresponds to a processing codestored in the processing code storage part for executing processingaccording to the contract condition for each processing name in theembodiments. Also, the term “a processing code for checking acombination of data contents corresponding respectively to more than twoclasses of data items” corresponds to a processing code 1705 and checkdata 1706 for correlation check in the embodiments.

The terms “a main processing part, a processing programrequesting/execution part, a processing program generation part”respectively correspond to a main processing part 711 of a businessapplication program 2091, a processing program requesting/execution part713 and a processing program generation part 731 of a product definitionprogram 2094 shown in FIG. 7 in the embodiment, for example. Also, thephrase “one of the data content ID and the data content capable of beingselected for each data item of the predetermined class ID” correspondsto “annuity certain” or “whole life annuity with guaranteed installment”as selectable data of a drop-down menu of annuity class shown in FIG. 68in the embodiments, for example.

The term “a processing code for executing processing for handling one ofthe data content ID and the data content capable of being selected forall data items of a class ID” corresponds to a processing code whichrelates to a processing name “data item acquisition” in the processingcode storage part shown in FIG. 64 in the embodiments, for example.Also, the term “a display formant definition part recording a displayformat for one of the data content ID and the data content” correspondsto a display format table recording display formats for contractconditions shown in FIG. 64 in the embodiments, for example. Further thephrase “separately records a processing code in hierarchy according tothe class ID” corresponds to a processing code storage part to be storedseparately in the first hierarchy “product category”, the secondhierarchy “clause class” and the third hierarchy “clause version” shownin FIG. 11 in the embodiments, for example.

The term “a group definition part recording a set-up condition ofpredetermined data for each group combining a plurality of class IDs”corresponds to a processing code storage part, a check data storage partor a combination thereof recorded in a contract rebundle definitionprogram 2095 shown in FIG. 22 in the embodiments, for example. Also, theterm “a set-up condition of the predetermined data recorded in the groupdefinition part” corresponds to a processing code “contract rebundlecheck of annuity class—payment period” and check data “contract rebundlecheck of annuity class—payment period” shown in FIG. 22 in theembodiments, for example.

The term “processing for determining whether or not a data value to bestored in the data storage part is recordable” corresponds to processingwhich relates to “Minimum insurance premium check” shown in FIG. 22 a inthe embodiments, for example. Also, the term “acquires name of thegroup” corresponds to processing relates to Plan name (annuity A) shownin FIG. 22 b in the embodiments, for example. Further, the term “aunique data value according to a data ID” corresponds to contract date359 stored in the work record shown in FIG. 35 in the embodiments, forexample.

The term “a processing code describing a method of set-up the uniquedata value” corresponds to a processing code “contract date” shown inFIG. 37 in the embodiments, for example. Also, the phrase “first classID to be recorded in the data storage part” corresponds to clause ID“55555” shown in FIG. 33 in the embodiments, for example. Further, theterm “second class ID relating to first class ID” corresponds to clauseID “00005” shown in FIG. 33 in the embodiments, for example.

The term “data item ID corresponding to a predetermined data item”corresponds to a pattern variable 1_631, a pattern variable 2_633 and soon shown in FIG. 40 in the embodiments, for example. Also, the phrase “acombination of data item ID and data content ID” corresponds to acombination data of “pattern variable” and “variable” stored in apattern variable storage part shown in FIG. 39 in the embodiments, forexample. Further, the term “processing of determining a data item and adata content corresponding thereto” corresponds to processing accordingto a processing code “preservation section requesting special attention”3928 a stored in the processing code storage part shown in FIG. 39 inthe embodiments, for example.

The term “attribution ID representing attribution of data specified by adata ID” corresponds to company ID 630 shown in FIG. 40 in theembodiments, for example. Also, the phrase “combination of a data itemID and a data content ID corresponding to a predetermined data item”corresponds to a combination of pattern variable 1_651 “002” andvariable 1_652 “2005/09/01” shown in FIG. 47 in the embodiments, forexample.

The term “a combination of a data item ID and a data item” correspondsto a pattern variable “002” and a pattern variable name “rate referencedate” stored in the pattern variable data storage part shown in FIG. 46in the embodiments, for example. The phrase “records . . . for eachdata-type in the data content” corresponds to setting-up column index ofpatter variable for each data format as described in column 7-5. in theembodiments.

The term “a condition set-up part for setting up a calculation conditionused at a calculation processing part” corresponds to an I/F edit class5323 of business application program 5301 shown in FIG. 53 in theembodiments, for example. Also, the phrase “calculation processing partfor executing predetermined calculation processing in accordance withthe calculation condition” corresponds to calculation model 5325 ofbusiness model 5301 shown in FIG. 53 in the embodiments, for example.Further, the term “calculation processing” of the term “each calculationprocessing” corresponds to one of the terms “withholding tax amountcalculation” and “yen conversion calculation” and so on shown in FIG. 53in the embodiments, for example. Still further, the term “a processingdata storage part containing all data potentially to be handled”corresponds to a work region 5307 shown in FIG. 53 in the embodiments,for example.

The term “a data definition part recording a correspondence tablerepresenting correspondence between a data content ID and data contentfor each data item” corresponds to a combination data storage part 735recording contractual coverage corresponding to contractual coverage IDfor each contract condition shown in FIG. 7 in the embodiments, forexample. The phrase “a processing definition part storing a processingcode for processing” corresponds to a processing code storage part 733storing processing code for each contract condition shown in FIG. 7 inthe embodiments, for example.

The term “correspondence table acquisition means for acquiring from thedata definition part a correspondence table on data item to be specifiedby class ID contained in data for specification and contents ofspecification processing” corresponds to the function describes in stepS1323 shown in FIG. 13 in the embodiments, for example. Also, the phrase“processing code acquisition means acquiring from the processingdefinition part a processing code on the designated processing”corresponds to the function describes in step S1321 shown in FIG. 13 inthe embodiments, for example. Further, the term “program generationmeans generating a program in accordance with the acquiredcorrespondence table and the processing code” corresponds to thefunction describes in step S1325 shown in FIG. 13 in the embodiments,for example.

In the present invention the term “ . . . means” is a concept thatincludes the function of CPU realized with a program(s). Here, the term“program(s)” is a concept not only include a program directly executablewith a CPU but also including a program in source format, a compressedprogram(s), an encoded program(s) and so on.

The features of the present invention may be broadly described in theabove, its structures and details will be more apparent as well as itsfeatures and advantages with reference to accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a functional block diagram of a data management apparatusaccording to the present invention;

FIG. 1 a is another functional block diagram of the data managementapparatus according to the present invention;

FIG. 2 is a hardware structure diagram of the data management apparatusaccording to the present invention;

FIG. 2 a is another hardware structure diagram of the data managementapparatus according to the present invention;

FIG. 3 is a flowchart of a business application program and a productdefinition program according to the present invention;

FIG. 4 is a flowchart of a processing program according to the presentinvention;

FIG. 5 is a diagram showing display screen for setting-up class ofannuity according to the present invention;

FIG. 6 is a diagram showing a transaction data base according to thepresent invention;

FIG. 7 is a block diagram of both the business application program andthe product definition program according to the present invention;

FIG. 7 a is another block diagram of both the business applicationprogram and the product definition program according to the presentinvention;

FIG. 8 shows a diagram illustrating a structural example of theprocessing program;

FIG. 9 shows a functional diagram of the business application program,the wrapper program and the product definition program according to thepresent invention;

FIG. 9 a is another a functional diagram of the business applicationprogram, the wrapper program and the product definition programaccording to the present invention;

FIG. 10 is a flowchart of the business application program, the wrapperprogram and the product definition program according to the presentinvention;

FIG. 10 a is another a flowchart of the business application program,the wrapper program and the product definition program according to thepresent invention;

FIG. 11 is a functional block diagram the product definition programaccording to the present invention;

FIG. 12 is an example of business application of the present inventionto other industries;

FIG. 13 is a flowchart of both the business application program and theproduct definition program according to the present invention;

FIG. 14 is a flowchart of the processing program according to thisinvention;

FIG. 15 is a diagram showing screen-image of an annuity-class set-upscreen according to this invention;

FIG. 16 is a diagram showing a transaction data base according to thepresent invention;

FIG. 17 is a diagram illustrating a structural example of the processingprogram according to the present invention;

FIG. 17 a is another diagram illustrating another structural example ofthe processing program according to the present invention;

FIG. 18 is a diagram illustrating a conventional technology (1) to thepresent invention;

FIG. 19 is a diagram illustrating a conventional technology (2) to thepresent invention;

FIG. 20 is a diagram illustrating a functional block diagram of a datamanagement apparatus according to the present invention;

FIG. 21 is a diagram illustrating a hardware structure of the datamanagement apparatus according to the present invention;

FIG. 22 is a diagram showing examples of functional block diagrams ofthe business application program, wrapper program A, contract rebundledefinition program, wrapper program B and clause definition programaccording to the present invention;

FIG. 22 a is another diagram showing examples of functional blockdiagrams of the business application program, wrapper program A, andcontract rebundle definition program according to the present invention;

FIG. 22 b is another diagram showing examples of functional blockdiagrams of the business application program, wrapper program A, andcontract rebundle definition program according to the present invention;

FIG. 23 is a diagram showing a flowchart of the business applicationprogram, wrapper program B, and contract rebundle definition programaccording to the present invention;

FIG. 23 a is a diagram showing a flowchart of a business applicationprogram according to this invention;

FIG. 23 b is a diagram showing another flowchart of the businessapplication program according to this invention;

FIG. 24 is a flow chart of contract rebundle check processing accordingto the present invention;

FIG. 24 a is another flow chart of contract rebundle check processingaccording to the present invention;

FIG. 24 b is another flow of contract rebundle check processingaccording to the fourth embodiment;

FIG. 25 is a flowchart of contractual coverage acquisition processingaccording to the present invention;

FIG. 26 is a flowchart of the processing program according to thepresent invention;

FIG. 27 is another flowchart of the processing program according to thepresent invention;

FIG. 27 a is another flowchart of the processing program according tothe present invention;

FIG. 28 is a diagram showing a transaction database according to thepresent invention;

FIG. 29 a is a diagram illustrating a structural example of theprocessing program according to the present invention;

FIG. 29 b is another diagram illustrating another structural example ofthe processing program according to the present invention;

FIG. 29 c is another diagram illustrating another structural example ofthe processing program according to the present invention;

FIG. 30 is another diagram illustrating another structural example ofthe processing program according to the present invention;

FIG. 31 is a diagram showing a screen-image of an insurance amountchange screen according to the present invention;

FIG. 32 is a diagram showing a transaction database according to thepresent invention;

FIG. 33 is another diagram illustrating another structural example ofthe processing program according to the present invention;

FIG. 34 is a functional diagram showing an example of block diagrams ofthe business application program, the wrapper program A, the clausedefinition program (clause of rider), the wrapper program B and anotherclause definition program (clause of basic policy) according to thepresent invention;

FIG. 35 is a diagram showing a work record according to the presentinvention;

FIG. 36 is a diagram showing a screen-image of an insurance policychange screen according to the present invention;

FIG. 37 is another diagram illustrating another structural example ofthe processing program according to the present invention;

FIG. 38 is another flowchart of the processing program according to thepresent invention;

FIG. 39 is a functional diagram showing an example of the businessapplication program, the wrapper program and a processing statusdefinition program according to the present invention;

FIG. 40 is another diagram showing a work record according to thepresent invention;

FIG. 41 a diagram showing a flowchart of the business applicationprogram according to the present invention;

FIG. 41 a is another diagram showing another flowchart of the businessapplication program according to the present invention;

FIG. 42 is a diagram illustrating a flowchart of a pattern variableset-up processing according to the present invention;

FIG. 42 a is a diagram showing a flowchart of pattern variableacquisition processing according to the present invention;

FIG. 43 is a diagram showing a flowchart of the processing programaccording to this invention;

FIG. 43 a is a diagram showing a flowchart of the processing programaccording to this invention;

FIG. 44 is a diagram showing a screen-image of a preservation sectionrequesting special attention set-up screen according to the presentinvention;

FIG. 44 a is a diagram showing a display screen for insurance policycancellation screen according to the present invention;

FIG. 45 is a diagram illustrating a structural example of the processingprogram according to the present invention;

FIG. 45 a is another diagram illustrating another structural example ofthe processing program according to the present invention;

FIG. 46 is a diagram showing examples of functional block diagrams ofthe business application program, the wrapper program and data itemdefinition program according to the present invention;

FIG. 47 is a diagram showing a work record according to the presentinvention;

FIG. 48 is a diagram showing a flowchart of the business applicationprogram according to the present invention;

FIG. 49 is a flowchart of the pattern variable acquisition processingaccording to the present invention;

FIG. 50 is a flowchart of the processing program according to thisinvention;

FIG. 51 is a diagram showing a screen-image of cash surrender valuecalculation screen according to the present invention;

FIG. 52 is a diagram illustrating a structural example of the processingprogram according to the present invention;

FIG. 53 is a diagram showing examples of functional block diagrams ofthe business application program, the wrapper program, the clausedefinition program and the work region according to the presentinvention;

FIG. 54 a flowchart of the processing program according to thisinvention;

FIG. 54 a is another flowchart of the processing program according tothis invention;

FIG. 54 b is another flowchart of the processing program according tothis invention;

FIG. 55 is a flowchart of withholding tax amount calculation processingaccording to the present invention;

FIG. 56 is a flowchart of the withholding tax amount calculationprocessing (I/F edit class);

FIG. 56 a is a flowchart of the withholding tax amount calculationprocessing (I/F edit class);

FIG. 57 is a flowchart of withholding tax amount calculation processing(calculation model) according to the present invention;

FIG. 58 is a diagram showing a work region according to the presentinvention;

FIG. 58 a is a diagram showing another work region according to thepresent invention;

FIG. 59 is a screen-image for calculating a cash surrender value amountaccording to the present invention;

FIG. 59 a is another screen-image for calculating a cash surrender valueamount according to the present invention;

FIG. 60 is a flowchart of a screen-image for calculating a foreigncurrency annuity cash surrender value amount according to the presentinvention;

FIG. 61 is a flowchart of a yen converting calculation processingaccording to the present invention;

FIG. 62 is a flowchart of detailed yen converting calculation processing(I/F edit class) according to the present invention;

FIG. 63 is a flowchart of another detailed yen converting calculationprocessing (calculation model) according to the present invention;

FIG. 64 is a diagram showing examples of functional block diagrams ofthe business application program, the wrapper programs A and B, theclause definition program and a display format table according to thepresent invention;

FIG. 65 is a flowchart of the business application program, the wrapperprograms A and B, and the clause definition program according to thepresent invention;

FIG. 66 is a flowchart of the business application program and thewrapper program B according to the fourth embodiment;

FIG. 67 is a flowchart of the processing program according to thisinvention;

FIG. 68 is a screen-image of an individual adjustment screen accordingto the present invention;

FIG. 68 a is another screen-image of an individual adjustment screenaccording to the present invention;

FIG. 69 is a diagram illustrating a structural example of the processingprogram according to the present invention;

FIG. 69 a is another diagram illustrating another structural example ofthe processing program according to the present invention;

FIG. 70 is a diagram showing an example of generating a relation tableaccording to the present invention;

FIG. 71 is a diagram showing a work record according to the presentinvention;

FIG. 72 is shows a detailed flowchart of the UI screen-image generationprocessing according to the present invention.

REFERENCE NUMERALS

-   13: data recording part-   15: data processing part-   17: data definition part-   18: group definition part

DETAILED DESCRIPTION OF DESIRED EMBODIMENTS

Embodiments of the present invention will be described herein withreference to drawings.

1. The First Embodiment

In this embodiment, a data management apparatus managing transactiondata for administration of contracts of life insurance and productdefinition data on life insurance products will be described.

1-1. Functional Block Diagram

FIG. 1 is a functional block diagram of a data management apparatusaccording to the present invention. In this drawing, the data managementapparatus 1 comprises input means 11, a data storage part 13, dataprocessing means 15, a data definition part 17 and display means 19. Thedata storage part 13 stores transaction data. The data definition part17 records data contents IDs and data contents for each class IDrepresenting a product class. For example, in the case of insuranceproducts, a contractual coverage ID and contractual coverage arerecorded for each clause ID representing a class of insurance products.The data processing means 15 acquires a data contents ID (a contractualcoverage ID) and data content (contractual coverage) from the datadefinition part 17 in accordance with a class ID (clause ID) stored inthe data storage part 13 and performs processing as to the data content(contractual coverage).

The input means 11 is means for initiating a processing on data content(contractual coverage) of a business application program upon receipt ofoperation of a user, and the display means 19 is used to display theresult of a predetermined data processing according the businessapplication program.

1-2. Hardware Structure

FIG. 2 shows an example of hardware structure of a computer apparatusrealized by the data management apparatus shown in FIG. 1 using a CPU.As shown in FIG. 2, the data management apparatus 1 comprises a display201, a CPU 203, a memory 205, a key board/mouse 207, a hard disk 209, aCD-ROM drive 211 and a communication circuitry 215.

The hard disk 209 stores a business application program (hereinafterreferred to as a business program) 2091, a transaction database 2093 anda product definition program 2094. The business program 2091 isinstalled by reading out data stored on a CD-ROM 212 via the CD-ROMdrive 211. Such installation may be carried out using data downloadedfrom a network 0 with the communication circuitry 215.

The data storage part 13 is realized by the transaction database 2093,and the data processing means 15 is implemented with the businessprogram 2091 performed by the CPU 203 using the memory 205. Also thedata definition part 17 is realized with a product definition program2094 performed by the CPU 203 using the memory 205. The input means 11is mainly realized with the key board/mouse 207 and the display means 19is done by the display 201.

1-3. Processing details

Processing details of this embodiment will be described with referenceto FIGS. 3 through 8. In this embodiment, the business program 2091 isan application program for managing contractual data and product data oflife insurance. FIG. 7 shows a functional block diagram of the businessprogram 2091 and the product definition program 2094. The businessprogram 2091 includes both a main processing part 711 implementingprocessing on a user interface such as display processing and processingrelated on database, and a processing program requesting/execution part713 requesting a processing program to the product definition program2094 and implementing such program.

In addition, the product definition program 2094 comprises a processingprogram generation part 731 for generating a processing program uponreceipt of a request from the business program 2091, a processing codestorage part 733 storing processing codes for every processing and acombination data storage part 735 recording combination data ofcontractual coverage and contractual coverage ID for each processing(when the clause ID is “11111”).

In this embodiment, a case in which a user instructs to change the classof annuity in a transaction data specified by policy number from“annuity certain” to “whole life annuity with guaranteed installment”will be described. FIG. 3 is a flowchart of a business program 2091 anda products definition program 2094 performed by the data managementapparatus 1 in the above case.

1-3-1. Acquisition of Screen-Image Data

FIG. 5 is a diagram showing a display screen for setting-up class ofannuity 501 displayed on a display 201 as a result of carrying out thebusiness program 2091 by a main processing part 711. In this displayscreen, an entry field of policy number 503, radio buttons 504 and 505for setting-up class of annuity are displayed thereon, and an operatorof the data management apparatus 1 can instruct change of insuranceclass for the transaction data on a life insurance contract specified bya predetermined policy number. For example, the operator instructs theapparatus 1 change of annuity class by inputting “00001” in the entryfield 503 and selects the radio button 505 for whole life annuity withguaranteed installment and then clicking a set-up button 507 forsetting-up using the key board/mouse 207.

Upon clicking the set-up button 507, the CPU 203 implementing the mainprocessing part 711 acquires screen-image data (steps S301). Forexample, the CPU 203 acquires a policy number “00001” and the class ofannuity “whole life annuity with guaranteed installment” as screen-imagedata.

1-3-2. Acquisition of Records

The CPU 203 implementing the main processing part 711 access to thetransaction database 2093 and conducts a search in accordance with thepolicy number inputted as the screen-image data, and acquires atransaction record specified by the policy number in a work regiongenerated on the memory 205 (step S303).

FIG. 6 shows a diagram showing a transaction data base 2093. In thisdatabase, a policy number 601, a clause ID 603, a variable 1_605, avariable 2_607 and a variable 3_609 and so on are stored as transactiondata regarding contractual management of life insurance. The recordingformat of the work region is the same as that of the transactiondatabase. Here, the policy number 601 is a data ID for specifying atransaction record, the clause ID 603 is an ID for specifying ainsurance product, the variable 1_605, the variable 2_607 and thevariable 3_609 and so on are contractual coverage IDs for specifyingrespective contractual coverage.

For example, the CPU 203 acquires from the transaction database 2093 atransaction record 61 specified by a policy number “00001”.

1-3-3. Request for a Processing Program

The CPU 203 implementing the processing program requesting/executionpart 713 specifies the product definition program 2094 in accordancewith the clause ID recorded in the transaction record which is acquiredby carrying out of the main processing part 711 and delivers the name ofprocessing to the product definition program (step S305).

When the product definition program 2094 is written in Java (Trademark)language, such program 2094 may be specified by a class file(11111.class) and the like recorded under the same name of the clause ID(11111). Also, the product definition program may be specified using aclause ID and a corresponding table of the product definition program2094.

The name of processing delivered to the product definition program 2094is determined according to an instruction from the operator. Forexample, the CPU 203 delivers the name of processing “setting-up classof annuity” acquired through implementing the main processing part 711because an instruction to set up class of annuity is made on the annuityclass set-up display screen in the above description.

1-3-4. Acquisition of Processing Data and Combination Data

Subsequently, the case in which a processing code is delivered to theproduct definition program 2094 having clause ID “11111”, will bedescribed hereunder. On receipt of delivery, the CPU 203 carries out theprocessing program generation part 731 of the program 2094 and acquiresa processing code corresponding to the name of processing beingdelivered, by conducting a search of the processing code storage part733 (step S321). In the processing code storage part 733, processingcodes are recorded for each processing name. For example, the CPU 203acquires a processing code 7331 which has a processing name of “annuityclass set-up” by conducting a search and the like.

Subsequently, the CPU 203 acquires combination data of contractualcoverage and the contractual coverage IDs corresponding to the name ofprocessing inherited by conducting a search of the combination datastorage part (step S323). In the combination data storage part 735,combination data are stored for each of the contractual coverage (perdata item). For example, the CPU 203 acquires combination data 7351 ofwhich contract terms is “annuity class”.

As shown in FIG. 7 a, it is possible to construct the programs so that apart of functions of the processing program generation part 731 isprovided to the processing code storage part 733, and conduct a searchfor the combination data storage part 735 from the processing codestorage part 733, and then acquires contractual coverage correspondingto the name of processing and combination data of the contractualcoverage ID.

1-3-5. Generation of Processing Program

The CPU 203 generates a processing program in accordance with theprocessing code acquired from the processing code storage part andcombination data acquired from the combination data storage part (stepS325). FIG. 8 shows a diagram illustrating a structural example of theprocessing program thus generated. Such processing program 80 comprisesa processing code 801 and combination data 803. A program code forprocessing “setting-up annuity class” is described in the processingcode 801, for example. Such description format of the program code mayeither be a source code or an object code.

In the combination data 803, a contractual coverage ID used by theprogram code for processing “setting-up annuity class” and combinationdata of the contractual coverage are described. The description formatof the combination data can be any format capable of identifying thecontractual coverage corresponding to the contractual ID at theexecution of the program code. Formats such as a sequence format and atable format and the like correspond to the description format.

1-3-6. Delivery of Processing Program

The CPU 203 carrying out the product definition program 2094 deliversthe generated processing program 80 to the business program 2091 (stepS327). For example, the CPU 203 carries out a processing for deliveringthe processing program 80 using a redirect function and a pipe functionand so on.

1-3-7. Execution of Processing Program

In implementing the business program 2091, the CPU 203 carries out theprocessing program 80 received from the product definition program 2094,and acquires the contractual coverage ID corresponding to thecontractual coverage acquired through the screen-image data (step S307).FIG. 4 shows a flowchart of a processing program 80 performed at thattime. In implementing the processing program 80, the CPU 203 inputscontractual coverage acquired through the screen-image data acquired atstep S301 in the flowchart of the business program 2091. (step S401).“Whole life annuity with guaranteed installment” is input as thecontractual coverage, for example.

The CPU 203 reads in a piece of combination data of a contractualcoverage ID and contractual coverage from the combination data 803stored in the processing program 80 (step S403). For example acontractual coverage ID “01” and, the combination data 8031 of thecontractual coverage ID and the contractual coverage “annuity certain”are read in from the combination data of the processing program 80 shownin FIG. 8.

Then the CPU 203 judges whether or not the inputted contractual coverageconforms to the contractual coverage of the combination data thus readin (step S405). For example, a judgment whether or not the contractualcoverage “whole life annuity with guaranteed installment” thus inputtedconforms to combination data of the contractual coverage “annuitycertain” of the combination data initially read in.

If both the contractual coverage do not conform each other in step S405,the process returns to step S403 and reads in the subsequent combinationdata and carries out the step 405 again (step S405, NO). When bothconform each other, the process proceeds to step S407 and acquires thecontractual coverage ID corresponding to the contractual coverage of thecombination data (step S407). For example, since the contractualcoverage “whole life annuity with guaranteed installment” conforms tothat of the combination data 8032 read in secondly (contractual coverageID “02” and contractual coverage “whole life annuity with guaranteedinstallment”), the contractual coverage ID “02” corresponding to thatcontractual coverage is obtained.

The CPU 203 records the contractual coverage ID thus obtained to apredetermined position of variable in the work region obtained from thetransaction record (step S409). For example, a contractual coverage “02”is recorded in a variable 1 of the work region representing a positionin variable of annuity class. Here, information on the variable positionto which the contractual coverage is recorded, is previously set-upwithin the processing code originating the processing program 80.

Alternatively, the variable position may also be set up at out of theprocessing code. For example, the variable position may be set up at thecombination data or independent variable position data and so forth andmay incorporate into a processing program 80 during the generationthereof.

When the processing program 80 is written in Java (trademark), theprocessing program 80 may configured to generate the processing program80 so that combination data of the contractual coverage ID and thecontractual coverage data to be set to Key and Value of HashMap class inJavaAPI, and the contractual coverage so on may be handled by specifyinga method of acquiring data within the processing program 80.

1-3-8. Updating Record

Upon completion of implementing the processing program 80, the CPU 203updates the record of the transaction database 2093 in accordance withthe data recorded in the work region (step S309). For example, thetransaction 61 record shown in FIG. 6 becomes a transaction record 65 asa result of the update. As show in FIG. 6, “01” of the variable 1 of therecord 61 is updated as “02” of the variable 1 of the record 65.

1-4. Conclusion

As described in the above, contractual coverage based on a plurality ofcontract conditions can be managed using one item in the transactiondata in accordance with the present invention. As a consequence, it ispossible to acquire contractual coverage in a desired contract conditionand carry out processing according to a contractual coverage based onthe acquired coverage without managing the contractual coverage for eachcontract condition of insurance product data in the transactiondatabase. In this way, system configuration can be simplified byunitizing the format even when transaction data containing data having aplurality of data items is handled.

It is not necessary to describe characteristics based on the product inthe business program by specifying the product definition programaccording to class ID (clause ID) representing the product class as wellas setting up so that data processing is carried out with a processingprogram 80 generated using a predetermined processing code andcombination data in the specified product definition program. In thisway, maintenance-ability of the business program can be increased.

In addition, appropriate operation is carried out by just adding aproduct definition program and setting up necessary processing code andnecessary combination data even when a new product(s) is added.Consequently, systemic change can be carried out flexibly without imposea heavy burden on system engineers who develop such programs.

The present invention can build computer software capable of increasingversatility of a business program by independently configuring both ajudgment logic determined according to the contents of product data andthe business program calling up the judgment logic. As a consequence, itis necessary is to design only the processing code and combination datain the product definition program so that the such code and data aresuitable for the business of each company when the present invention isapplied to a software package which customizes in accordance withoperational setup of each introductory company. By doing that, thedevelopment costs and the introductory costs may be reduced because ofno customization of the business program is needed.

2. Second Embodiment

Although, the business program 2091 comprises the main processing part711 and the processing program requesting/execution part 713, and theproduct definition program 2094 includes the processing programgeneration part 731, the processing code storage part 733 and thecombination data storage part 735 in the first embodiment as shown inFIG. 7, in this embodiment, an example in which processing according tothe request of the processing program requesting/execution part 713 isconfigured using a wrapper program independent from the business programwill be described herein. The wrapper program is a program intensivelyimplementing a predetermined processing in response to a request fromthe outside.

FIG. 9 shows a functional diagram of the business program 2091, thewrapper program 2092 and the product definition program 2094. Thebusiness program 2091 comprises a main processing part 911 forimplementing processing on user interface such as image processing and adatabase and a processing program execution part 931 b for implementingthe processing program. The wrapper program 2092 includes a processingprogram request part 931 a for requesting the processing program to theproduct definition program 2094 and so on. The product definitionprogram 2094 comprises processing program generating parts 933 a, 933 b,933 c and so on for generating the processing program on receipt of arequest, a processing code recording part 951 and a combination datarecording part 952 recording combination data of contractual coverage IDand contractual coverage for each processing name (for example, when theclause ID=“11111”).

Similar to the first embodiment, this embodiment will describe a datamanagement apparatus managing transaction data on contract managementand product defining data on life insurance products as well.

2-1. Functional Block Diagram

The functional block diagram of the data management apparatus 1 is thesame as that used in the first embodiment show in FIG. 1.

2-2. Hardware Structure

A hardware structure of a computer device with a CPU which realizes thedata management apparatus 1 according to the present invention isbasically the same as that in the first embodiment shown in FIG. 2. Thedifference between the structures is in that the wrapper program isstored in the hard disk 209.

2-3. Processing Details

Details of processing according to this embodiment will be describedusing FIG. 10. In this embodiment, the business program 2091 is anapplication program for managing contract data of life insurance andproducts data of life insurance.

Similar to the first embodiment, a case in which a user instructs tochange the class of annuity in a transaction data specified by policynumber from “annuity certain” to “whole life annuity with guaranteedinstallment” will be described in this embodiment as well. FIG. 10 is aflowchart of the business program 2091, the wrapper program 2092 and theproduct definition program 2094 executed by the data managementapparatus 1 in the above mentioned case.

2-3-1. Acquisition of Screen-Image Data

Similar to the first embodiment, a case in which the operator inputs“00001” in the entry field 503 of the policy number and selects theradio button 505 for whole life annuity with guaranteed installment andthen clicks a set-up button 507 for set-up in the display screen forsetting-up class of annuity 501 shown in FIG. 5 will be described.

Upon clicking the set-up button 507, the CPU 203 implementing the mainprocessing part 911 acquires screen-image data (steps S1001). Forexample, the CPU 203 acquires a policy number “00001” and the class ofannuity “whole life annuity with guaranteed installment” as screen-imagedata.

2-3-2. Acquisition of Records

The CPU 203 implementing the main processing part 911 access to thetransaction database 2093 and conducts a search in accordance with thepolicy number inputted as the screen-image data, and acquires atransaction record specified by the policy number in a work regiongenerated on the memory 205 (step S1003). An example of transactiondatabase 2093 and that of the work region are the same as shown in FIG.6 in the first embodiment. For example, the CPU 203 acquires thetransaction record 61 specified by a policy number “00001” from thetransaction database 2093.

The CPU 203 executing the business program 2091 delivers to the wrapperprogram 2092 the clause ID stored in the transaction record 61 and aprocessing name specified according to the operator's instruction (stepS1005). For example, the CPU 203 delivers the name of processing“setting-up class of annuity” acquired through implementing the mainprocessing part 911 because an instruction to set up class of annuity ismade on the annuity class set-up display screen in the abovedescription.

In the step S1005, variables 1, 2, 3 of the contractual coverage IDs ofthe transaction data record 61 may be delivered to the wrapper program2092 simultaneously. Thus, processing based on contractual coverage IDcan be executed in the wrapper program 2092 or the product definitionprogram 2094.

2-3-3. Execution of Wrapper Program

The CPU 203 executing the wrapper program 2092 in the processing programrequest part 931 a specifies a product definition program in accordancewith the clause ID inherited from the business program 2091 and deliversthe processing name by accessing the specified product definitionprogram 2094 (step S1021).

2-3-4. Acquisition of Processing Data and Combination Data

Upon delivery, the CPU 203 carries out the processing program generatingpart 933 a of the product definition program 2094 and acquires aprocessing code corresponding to the inherited processing name from theprocessing code recording part (step S1041). In the processing coderecording part 951, processing codes are recorded for each processingname. For example, the CPU 203 acquires a processing code named as“setting-up class of annuity”.

Subsequently, the CPU 203 acquires from the combination data recordingpart 952 combination data of both contractual coverage and contractualcoverage ID corresponding to the inherited processing name (step S1043).In the combination data recording part 952, combination data is recordedfor each contract condition. For example, the CPU 203 acquirescombination data whose contract condition is “class of annuity”.

2-3-5. Generation/Execution of Processing Program

The CPU 203 carrying out the product definition program 2094 generates aprocessing program 80 according to the acquired processing code and thecombination data (step S1045). An example of the generated processingprogram 80 is the same as the one described in the first embodiment andshown in FIG. 8.

The CPU 203 executing the product definition program 2094 delivers thegenerated processing program 80 to the wrapper program 2092 (stepS1047). On receipt of such program, the CPU 203 carrying out the wrapperprogram 2092 further delivers the processing program 80 to the businessprogram 2091 (step S1023).

The CPU 203 executing the business program 2091 carries out theinherited processing program 80 and acquires a contractual coverage IDcorresponding to the contractual coverage obtained from the screen-imagedata (step S1007). The flowchart of the processing program 80 performedat this time is the same as that shown in FIG. 4 described in the firstenforcement.

As shown in FIG. 4, the CPU acquires, for example, a contractualcoverage ID “02” corresponding to a contractual coverage “whole lifeannuity with guaranteed installment” and records the acquiredcontractual coverage ID on the variable 1 in the work region of thetransaction record.

2-3-6. Updating Record

Upon completion of implementing the processing program 80, the CPU 203updates the record of the transaction database 2093 in accordance withthe data recorded in the work region (step S1009). For example, thetransaction record 61 shown in FIG. 6 of the first embodiment becomes atransaction record 65 as a result of the update. As show in FIG. 6, “01”of the variable 1 of the record 61 is updated as “02” of the variable 1of the record 65.

2-4. Conclusion

As described in the above, it is possible to combine programs forrequesting a desired processing program into a single program bydetermining a product definition program corresponding to the clause IDand to according to the present invention. In other words, requestprocessing of the processing program which should be executed togetherwith a specific processing of the product definition body can beindependent from the business program. Thus, the wrapper program can beused general-purpose to all instructions. This leads to the fact that,system configuration can be simplified and maintenance-ability of thebusiness program can be increased because it is unnecessary to generateprograms executing the specific processing of the product definitionbody and the request processing of the processing program for everyinstruction of the operator in the business program.

FIG. 9 a shows another embodiment in which a wrapper program is used. Inthis embodiment, the wrapper program constitutes both the processingprogram request/execution part 931 and the processing program generatingpart 933. In addition, FIG. 10 a is a flowchart of the business program2091, the wrapper program 2092 and the product definition program 2094executed by the data management apparatus 1 in the above-describedcases. Processing steps S1001 through S1003 and S1009 in the businessprogram 2091 and processing step S1021 in the wrapper program 2092 arethe same as that shown in FIG. 10.

In step S1004 shown in FIG. 10, the CPU 203 executing the businessprogram 2019 delivers clause ID stored in the transaction record 61, thespecified processing name under the instruction of the operator andcontractual coverage acquired from the screen image data to the wrapperprogram 2092.

The CPU 203 implementing the wrapper program 2092 specifies the productdefinition program 2094 in accordance with the clause ID inherited fromthe business program 2091 in the processing program request/executionpart 931 and delivers to the processing program generating part 933 thespecified name of the product definition program 2094 and a processingname simultaneously inherited. In addition, the processing programgenerating part 933 delivers the processing name to the specifiedproduct definition program 2094 inheriting such processing name (stepS1021).

Upon receipt of the delivery, the CPU 203 acquires a processing codecorresponding to the processing name inherited from the processing coderecording part 951 by executing the specified product definition program2094 and delivers the code to the wrapper program 2092 (step S1051). Inthe processing code recording part 951, processing codes are recordedfor every processing name. For example, the CPU 203 acquires aprocessing code named as “setting-up class of annuity”.

The CPU 203 acquires combination data of the contractual coverage andthe contractual coverage ID corresponding to the processing nameinherited from the combination data recording part and delivers them tothe wrapper program 2092 (step S1053). In the combination data recordingpart 952, combination data are recorded for every contract condition.For example, the CPU 203 acquires combination data whose contractcondition is “class of annuity”.

The CPU 203 carrying out the wrapper program 2092 generates a processingprogram according to the processing code inherited from the productdefinition program 2094 and the combination data (step S1022). Anexample of the generated processing program is the same as the onedescribed in the first embodiment and shown in FIG. 8.

Subsequently, the CPU 203 implementing the wrapper program 2092 carriesout the inherited processing program 80 which is generated at theprocessing program generating part 933 and acquires a contractualcoverage ID corresponding to the contractual coverage obtained from thescreen-image data (step S1024). The flowchart of the processing program80 performed at this time is the same as that shown in FIG. 4 describedin the first enforcement.

As shown in FIG. 4, the CPU acquires, for example, a contractualcoverage ID “02” corresponding to a contractual coverage “whole lifeannuity with guaranteed installment” and records the acquiredcontractual coverage ID on the variable 1 in the work region of thetransaction record.

As described in the above, it is possible to combine the processing fordetermining the contractual coverage ID or the contractual coverage intoa single program according to the present invention. In other words, aprogram which performs both generation and implementation of aprocessing program which should be implemented in response topredetermined instruction may be independent of the business program.

Thus, the wrapper program can be used general-purpose to allinstructions. This leads to the fact that, system configuration can besimplified and maintenance-ability of the business program can beincreased because it is unnecessary to generate programs executing thespecific processing of the product definition body and the requestprocessing of the processing program for every instruction of theoperator in the business program.

3. Third Embodiment

In the first embodiment, an example in which after acquiring acontractual coverage ID (data contents ID) corresponding to the onecontractual coverage (data contents) inputted into the screen-imagedata, such contractual coverage ID is stored into the transactiondatabase is described. In this embodiment, however, a case in which acontractual coverage ID corresponding to the two or more contractualcoverage (data contents) are acquired, and after implementing processingwhich confirms whether the combination of these contractual coverage IDsis appropriate or not, the two or more contractual coverage ID arestored in the transaction will be described.

3-1. Functional Block Diagram

The functional block diagram of the data management apparatus 1 is thesame as that used in the first embodiment.

3-2. Hardware Structure

A hardware structure of a computer device with a CPU which realizes thedata management apparatus 1 according to the present invention isbasically the same as that in the first embodiment shown in FIG. 2.

3-3. Processing Details

Details of processing according to this embodiment will be describedusing FIGS. 13 through 17. The functional block diagram of the businessprogram 2091 and the product definition program 2094 is the same as thatshown in FIG. 7 of the first embodiment. A case in which a userinstructs to change the class of annuity in a transaction data specifiedby policy number from “annuity certain” to “whole life annuity withguaranteed installment” and to change the annuity payment period from “5years” to “whole life annuity with guaranteed installment” will bedescribed in this embodiment as well. FIG. 13 is a flowchart of thebusiness program 2091 and the product definition program 2094 executedby the data management apparatus 1 in the above mentioned case.

3-3-1. Acquisition of Screen-Image Data

FIG. 15 shows a screen-image of an annuity-class set-up screen 1501displayed on the display 201 under the execution of the main processingpart 711 (FIG. 7) in the business program 2091. An entry field forpolicy number 1503, a radio buttons for setting-up class of annuity 1504and 1505 and a radio button for setting-up annuity payment period 1506and so on are displayed on this screen. The operator of the datamanagement apparatus 1 can instruct change of annuity class and ofannuity payment period on the transaction data for life insurancespecified by a predetermined policy number. For example, the operatorinputs “00001” into the entry field for policy number 1503 with the keyboard/mouse 207 and selects the radio button 1505 for set-up “whole lifeannuity with guaranteed installment” into the annuity class field andfurther selects the radio button 1506 for set-up “whole life” into theannuity payment period field and then sets up the change of annuityclass and of annuity payment period by clicking the set-up button 1507.

Upon clicking the set-up button 1507, the CPU 203 implementing the mainprocessing part 711 acquires screen-image data (step S1301). Forexample, the CPU 203 acquires a policy number “00001” and the class ofannuity “whole life annuity with guaranteed installment” and the annuitypayment period as screen-image data.

3-3-2. Acquisition of Record

The CPU 203 implementing the main processing part 711 access to thetransaction database 2093 and conducts a search in accordance with thepolicy number inputted as the screen-image data, and acquires atransaction record specified by the policy number in a work regiongenerated on the memory 205 (step S1303).

FIG. 16 shows a diagram showing a transaction data base 2093. In thisdatabase the transaction data regarding contractual management of lifeinsurance is managed therein similar to FIG. 6 described in the firstembodiment. The record format of the work region is identical with thatof the transaction database. For example, the CPU 203 acquires atransaction record 161 specified by the policy number “00001” from thetransaction database 2093.

3-3-3. Request for a Processing Program

The CPU 203 implementing the processing program requesting/executionpart 713 specifies the product definition program 2094 in accordancewith the clause ID recorded in the transaction record which is acquiredby carrying out of the main processing part 711 and delivers the name ofprocessing to the product definition program (step S1305).

For example, the product definition program 2094 is specified by a classfile (11111.class) and the like written in Java (Trademark) language.The name of processing delivered to the product definition program 2094is determined according to an instruction from the operator. Forexample, the CPU 203 delivers the names of processing “setting-up classof annuity”, “setting-up payment period” and “checking correlation”acquired through implementing the main processing part 711 because aninstruction to set up class of annuity is made on the annuity classset-up display screen in the above description. In other words, pluralprocessing codes are delivered in this embodiment.

3-3-4. Acquisition of Processing Data and Combination Data

Subsequently, the case in which a processing name is delivered to theproduct definition program 2094 having clause ID “11111”, will bedescribed hereunder. On receipt of delivery, the CPU 203 carries out theprocessing program generation part 731 of the program 2094 and acquiresa processing code corresponding to the name of processing inherited byconducting a search of the processing code storage part 733 (stepS1321). In the processing code storage part 733, processing codes arerecorded for each processing name. For example, the CPU 203 acquires aprocessing code 7331 having a processing name of “annuity class set-up”,processing code 7332 having a processing name of “payment period set-up”and another processing code 7333 having a processing name of“correlation checking set-up”.

Subsequently, the CPU 203 acquires combination data of the contractualcoverage and the contractual coverage IDs corresponding to the name ofprocessing inherited by conducting a search of the combination datastorage part (step S1323). In the combination data storage part 735,combination data are stored for each of the contractual coverage (perdata item). For example, the CPU 203 acquires both combination data 7351and 7352 whose contract conditions are respectively “annuity class” and“payment period”.

3-3-5. Generation of Processing Program

The CPU 203 generates a processing program in accordance with theprocessing code acquired from the processing code storage part andcombination data acquired from the combination data storage part (stepS1325). FIG. 17 shows a diagram illustrating a structural example of theprocessing program thus generated. Such processing program 170 comprisesa processing code 1701 and combination data 1702 for “annuity classset-up”, another processing code 1703 and combination data 1704 for“payment period” and another processing code 1705 and check data 1706for “correlation check”.

In this case, it is assumed that the check data 1706 is stored in thesame region to the processing code 1705 in the product definitionprogram 2094. Such check data is data storing all combinations of theannuity class and payment period, the description format of thecombination data can be any format capable of identifying at theexecution of the processing code. For example, formats such as asequence format and a table format and the like correspond to thedescription format. Data stored in the check data may be either of thecontractual coverage ID and the contractual coverage.

As shown in FIG. 17 a, the processing program may be generated for eachprocessing code. For example, a processing program 171 for “annuityclass setting-up” generated from a processing code and combination datafor “annuity class set-up”, another processing program 173 for “paymentperiod setting-up” generated from a processing code and combination datafor “payment period setting-up” and another processing program 175 for“correlation check” generated from a processing code and check data for“correlation checking” can respectively be generated.

3-3-6. Delivery of Processing Program

The CPU 203 carrying out the product definition program 2094 deliversthe generated processing program 170 to the business program 2091 (stepS1327). For example, the CPU 203 carries out a processing for deliveringthe processing program 170 using a redirect function and a pipe functionand so on.

3-3-7. Execution of Processing Program

In the business program 2091, the CPU 203 carries out the processingprogram 170 inherited from the product definition program 2094 (stepS1307). FIG. 14 shows a flowchart of the processing program 170performed at that time.

In implementing the processing program 170, the CPU 203 updates acontractual coverage ID on a predetermined variable position of the workregion by carrying out annuity class set-up processing using theprocessing code 1701 and the combination data 1702 (step S1401). Forexample, “01” of the variable 1 is updated as “02”. The flowchart of theannuity class set-up processing is similar to that shown in FIG. 4described in the first embodiment.

Similar to step S1401, the CPU 203 updates a contractual coverage ID ona predetermined variable position of the work region by carrying outannuity period set-up processing using the processing code 1703 and thecombination data 1704 (step S1403). For example, “02” of the variable 2is updated as “01”.

Subsequently, the CPU 203 carries out correlation check processing tocheck whether or not a preset value between the annuity class and thepayment period is correct using the processing code 1705 and the checkdata 1706(S1405˜S1415). The CPU 203 inputs contractual coverage IDswhich are set on the annuity class and the payment period from the workregion (step S1405). For example, a contractual coverage ID “02”representing “whole life annuity with guaranteed installment” andanother contractual coverage ID “01” showing “whole life” arerespectively input from the set variable 1 at step S1401.

Then, the CPU 203 judges read-in of the check data (step S1407, NO), andreads in one combination data of the annuity class and the paymentperiod from the check data 1706 (step S1409). For example, combinationdata 1706 of the annuity class “02 (whole life annuity with guaranteedinstallment)” and the payment period “01 (whole life)” is read in fromcombination data of the check data 1706 in the processing program 170shown in FIG. 17.

Next, the CPU 203 judges whether or not a combination data of thecontractual coverage ID inputted from the work region matches thecombination data read in from the check data 1706 (step S1411). Forexample, it is judged whether or not a combination of the contractualcoverage ID “02” representing “whole life annuity with guaranteedinstallment” and another contractual coverage ID “01” showing “wholelife” matches the combination data 17061 of the first annuity class “02(whole life annuity with guaranteed installment)” and the payment period“01 (whole life)”.

If no match of the contractual coverage IDs is judged in step S1411, theprocess returns to step S1407 and repeats similar processing (stepS1411, NO). On the other hand, the process proceeds to step S1413 andflags an updatable flag if the combination of contractual coverage IDsmatches each other (step S1413). For example, the updatable flag isturned on and terminates the processing because the inputted contractualcoverage ID “02” representing “whole life annuity with guaranteedinstallment” and another contractual coverage ID “01” showing “wholelife” matches the combination data 17061 initially read in.

The CPU 203 turns off the updatable flag when all combination of thecheck data 1706 is read in at step S1047 (step S1415). That is, in thiscase, it is judged that there is no check data which matches combinationof the inputted contractual coverage IDs and no set up of contractualcoverage IDs of the annuity class and the payment period defined in thework region can be carried out.

As described in the above, each processing program is just performed oneby one basis in the above-mentioned step S1307 when plural processingprograms are generated for every processing code. In this case, theprocessing in the processing program 171 for “annuity class setting-up”is the same as that of step S1401 (FIG. 14), the processing in theprocessing program 173 for “payment period setting-up” is the same asthat of step S1403 and the processing in the processing program 175 for“correlation check” is the same as that of steps S1405 through S1415.

3-3-8. Updating Record

Upon completion of implementing the processing program, the CPU 203judges whether or not update of the transaction data based on the datarecorded in the work region can be executed in accordance with theupdatable flag (step S1309). The CPU 203 updates the transaction datarecord of the transaction database 2093 when the updatable flag is in anon-state (step S1313). For example, the transaction record 161 shown inFIG. 16 becomes a transaction record 165 as a result of the update. Asshow in FIG. 16, “01” of the variable 1 and “02” of the variable 2 inthe record 161 are updated as “02” of the variable 1 and “01” of thevariable 2 in the record 165.

Further, the CPU 203 outputs an error message indicating that no updatecan be done to the display 201 as a result of judging non-update thereofwhen the updatable flag is in an off-state. The CPU 203 prompts theoperator to change the input value of data (step S1311).

3-4. Conclusion

As described in the above, in accordance with the present invention, itis possible to acquire the contractual coverage IDs corresponding to thetwo or more contractual coverage (data contents) and carry outprocessing for checking whether or not the combination of thesecontractual IDs are correct. As a consequence, it is possible to acquirecontractual coverage in a desired contract condition and carry outprocessing according to a contractual coverage based on the acquiredcoverage without managing the contractual coverage for each contractcondition of insurance product data in the transaction database.

It is not necessary to describe characteristics based on the product inthe business program by specifying the product definition programaccording to class ID (clause ID) representing the product class as wellas setting up so that data processing is carried out with a processingprogram generated using a predetermined code and combination data in thespecified product definition program. In this way, maintenance-abilityof the business program can be increased.

4. The Fourth Embodiment

In the first through the third embodiment, data handling for a singletransaction is described. This embodiment describes data handling ofmutually related plural transactions.

In life insurance, it is common to sell one insurance product in whichtwo or more riders are added to one basic policy. When transaction ofthe basic policy and that of riders are managed on the same database, itis necessary to ensure consistency with contractual coverage data ofother transaction included in the same insurance product if thecontractual coverage data is stored in a specific transaction.

(1) For example, in the case of the basic policy is “flat-rate annuity”and add “term insurance rider” thereto, the annuity class capable ofsetting up to the basic policy is limited to “annuity certain”. Andsimilarly, there might be a case that the payment term of annuitycapable of setting to the basic policy is limited to “10 years”.

(2) For example, in the case that the basic policy is “flat-rateannuity”, there might be a case to require equal or more than 3000 yenof the minimum monthly premium if a policyholder wants to add “a riderfor three major diseases security insurance”.

(3) For example, in the case that the basic policy is “flat-rateannuity”, the name of an insurance product is treated as “annuity A”when “term insurance rider” is added, and under the similar condition,the name of an insurance product is referred to as “annuity B” when “arider for three major diseases security insurance” is added.

Similar to the embodiments 1 trough 3, this embodiment describes a datamanagement apparatus managing transaction data on contract management oflife insurance and data on life insurance products as well.

The term “product definition data” described in the embodiments 1through 3 is read as “clause definition data”. In other words, “clausedefinition program” corresponds to such term. This is because product'sfeatures of a life insurance depend on its clause, defining a clausemeans defining insurance coverage. Also, data for defining an insuranceproduct in which a plurality of riders are added to one basic policy isreferred to as “contract rebundle definition data”. In other words,“contract rebundle definition program” corresponds to such term.

Consequently, the data management apparatus according to this embodimentis a data management apparatus for managing “clause definition data” and“contract rebundle definition data”.

4-1. Functional Block Diagram

FIG. 20 shows a functional block diagram of a data management apparatus1 according to this embodiment. The data management apparatus shown inthe drawing is differ from the one shown in FIG. 1 described in thefirst embodiment in that a group definition part 18 is added thereto.The group definition part 18 stores one of a combination of datacontents ID and that of data contents, capable of being stored in thedata storage part for each combination of plural kind of IDs. Forexample, in the case of an insurance product, one of a combination ofcontractual coverage IDs and a combination of contractual coverage thatcan handle, is stored for each combination pattern of the rider to themain insurance policy.

4-2. Hardware Structure

FIG. 21 shows an example of hardware structure of the data managementapparatus 1 according to the present invention realized using a CPU. Thestructure of the drawing is basically the same as that in the firstembodiment shown in FIG. 2. The difference between these is in that thehard disk 209 stores the business program 2091, a wrapper program A2092a, a wrapper program B2092 b, the transaction database 2093, thecontract rebundle definition program 2095 and the clause definitionprogram 2096.

4-3. Processing Details (1)

Processing details (1) of this embodiment will be described withreference to FIGS. 22 through 30. In this embodiment, the businessprogram 2091 is an application program for managing contractual data oflife insurance and product data. FIG. 22 shows a functional blockdiagram of the business program 2091, a wrapper program A2092 a, awrapper program B2092 b, the contract rebundle definition program 2095and the clause definition program 2096.

The business program 2091 includes a main processing part 2111 forexecuting processing on user interface such as image processing and adatabase.

The wrapper program A2092 a comprises a processing programrequest/execution part 2131 requesting a processing program to thecontract rebundle definition program 2095 and implementing the program.

The contract rebundle definition program 2095 comprises a processingprogram generation part 2151 for generating a processing program onreceipt of a request from the wrapper program A2092 a, a processing codestorage part 2153 storing processing codes for each processing name, acheck data storage part 2155 storing predetermined check data for eachprocessing name and a name data acquisition part 2157 for acquiring datarecorded in the clause definition program 2096 via the wrapper programB2092 b (in the case that main clause ID is “11111” for example).

In this embodiment, a case that the user respectively instructs thechanges of annuity class in the transaction data specified by policynumber to “whole life annuity with guaranteed installment” from“annuitycertain” and the change of annuity payment period from “5 years” to“whole life” will be described similar to the third embodiment. FIG. 23is a flowchart of the business program 2091, the wrapper program B2092 band the clause definition program 2096 executed by the data managementapparatus 1 in the above cases.

4-3-1. Acquisition of Image-Screen Data Acquisition of Screen-Image Data

FIG. 15 is a diagram showing a display screen for setting-up class ofannuity 1501 displayed on a display 201 as a result of carrying out themain processing part 2111 (FIG. 22) of the business program 2091. Inthis display screen, an entry field of policy number 1503, radio buttons1504 and 1505 for setting-up class of annuity and another radio button1506 for setting-up a payment period and so on are displayed thereon,and an operator of the data management apparatus 1 can instruct changeof annuity class and that of annuity payment period for the transactiondata on a life insurance contract specified by a predetermined policynumber. For example, the operator instructs the apparatus 1 change ofpayment period and that of payment period of annuity by inputting“00001” in the entry field 1503 and selecting the radio button 1505 forsetting-up “whole life annuity with guaranteed installment” as aninsurance class and the radio button 1506 for setting-up “whole life” asa payment period of annuity and then clicking a set-up button 1507 usingthe key board/mouse 207.

Upon clicking the set-up button 1507, the CPU 203 implementing the mainprocessing part 2111 acquires screen-image data (steps S2201 FIG. 23).For example, the CPU 203 acquires a policy number “00001” and the classof annuity “whole life annuity with guaranteed installment” asscreen-image data.

4-3-2. Acquisition of Records

The CPU 203 implementing the main processing part 2111 access to thetransaction database 2093 and conducts a search in accordance with thepolicy number inputted as the screen-image data, and acquires in a workregion generated on the memory 205 a transaction record specified by thepolicy number (step S2203).

FIG. 28 shows a diagram showing a transaction data base 2093. In thisdatabase, the policy number 601, a branch number 611, amain-rider-identifying-section 613, the clause ID 603, a variable 1_605,a variable 2_607 and a variable 3_609, insurance premiums 615 and so onare stored as transaction data regarding contractual management of lifeinsurance. The recording format of the work region is the same as thatof the transaction database.

Here, the policy number 601 is a data ID for specifying a transactionrecord, the clause ID 603 is an ID for specifying a insurance product,the branch number 611 is a data ID for uniquely specifying pluralclauses managed by the same policy number, themain-rider-identifying-section 613 is a sectional data for indicatingthe insurance policy is either “basic policy” or “rider”. In this case,the “basic policy” and “rider” are respectively indicated as “1” and“2”. The only one “basic policy exists in the same policy number, but aplurality of “riders” can exist therein. The clause ID 603 is an ID forspecifying a insurance product, the variable 1_605, the variable 2_607,the variable 3_9 so on are contractual coverage IDs specify respectivecontractual coverage.

For example, the CPU 203 acquires into the work region a transactionrecord 281 specified by the policy number “00001” from the transactiondatabase 2093.

4-3-3. Request for a Processing Program

The CPU 203 implementing the processing program 2091 delivers to thewrapper program B2092 b the clause ID recorded in the transaction record281 and processing name specified under the instruction of the operator(step S2205). For example, the CPU 203 delivers the names of processing“setting-up class of annuity”, “setting-up payment period” and“correlation check” acquired through implementing the main processingpart 2111 because an instruction to set up class of annuity is made onthe annuity class set-up display screen in the above description. Inother words, plural processing codes are delivered in this embodiment.

4-3-4. Execution of Wrapper Program

The CPU 203 executing the wrapper program B2092 a specifies a clausedefinition program in accordance with the clause ID inherited from thebusiness program 2091 in the processing program request/execution part2131 and delivers the processing name by accessing the specified clausedefinition program 2096 (step S 2221).

4-3-5. Acquisition of Processing Data and Combination Data

Subsequently, the case in which a processing code is delivered to theclause definition program 2096 having clause ID “11111”, will bedescribed hereunder. Upon delivery, the CPU 203 carries out a processingprogram generating part 2191 of the clause definition program 2096 andacquires a processing code corresponding to the inherited processingname by conducting a search of a processing code storing part 2193 (stepS2241). In the processing code storing part 2193, processing codes arerecorded for each processing name. For example, as shown in FIG. 7, theCPU 203 acquires a processing code 7331 named as “setting-up class ofannuity”, a processing code 7332 named as “setting-up payment period”and a processing code 7333 named as “correlation check”.

Subsequently, the CPU 203 acquires combination data of both contractualcoverage and the contractual coverage ID corresponding to the inheritedprocessing name as a result of the search in a combination data storagepart (step S2243). In the combination data storage part 2195,combination data is recorded for each contract condition. For example,the CPU 203 acquires combination data 7351 whose contract condition is“class of annuity” and another combination data 7352 whose contractcondition is “payment period” as shown in FIG. 7.

4-3-6. Generation•Execution of Processing Program

The CPU 203 generates a processing program in accordance with theprocessing code acquired from the processing code storage part andcombination data acquired from the combination data storage part (stepS2245). FIG. 17 shows a diagram illustrating a structural example of theprocessing program thus generated. Such processing program 170 comprisesa processing code 1701 and combination data 1702 for “annuity classset-up”, another processing code 1703 and combination data 1704 for“payment period” and another processing code 1705 and check data 1706for “correlation check”.

In this case, it is assumed that the check data 1706 is stored in thesame region to the processing code 1705 in the product definitionprogram 2094. Such check data is data storing all combinations of theannuity class and payment period, the description format of thecombination data can be any format capable of identifying at theexecution of the processing code. For example, formats such as asequence format and a table format and the like correspond to thedescription format. Data stored in the check data may be either of thecontractual coverage ID and the contractual coverage.

As shown in FIG. 17 a, the processing program may be generated for eachprocessing code. For example, a processing program 171 for “annuityclass setting-up” generated from a processing code and combination datafor “annuity class set-up”, another processing program 173 for “paymentperiod setting-up” generated from a processing code and combination datafor “payment period setting-up” and another processing program 175 for“correlation check” generated from a processing code and combinationdata for “correlation checking” can respectively be generated.

4-3-7. Execution of Processing Program

The CPU 203 carrying out the clause definition program 2096 delivers thegenerated processing program 170 to the wrapper program B2092 b (stepS2247). On receipt of the program, the CPU 203 executing the wrapperprogram B2092 b delivers the processing program 170 to the businessprogram 2091 (step S2223).

4-3-8. Execution of Processing Program

In implementing the business program 2091, the CPU 203 carries out theprocessing program 170 inherited from the clause definition program 2096(step S2207). The flowchart of the program executed that time is thesame as that shown in FIG. 14.

4-3-9. Processing of Contract Rebundle Check

Upon completion of implementing the processing program, the CPU 203judges whether or not update of the transaction data based on the datarecorded in the work region can be executed in accordance with theupdatable flag (step S2209). The CPU 203 carries out the contractrebundle check processing when the updatable flag is in an on-state as aresult of the judgment such as updatable (step S2211).

Further, the CPU 203 outputs an error message indicating that no updatecan be done on the display 201 as a result of judging non-update thereofwhen the updatable flag is in an off-state. The CPU 203 prompts theoperator to change the input value of data (step S2214).

4-3-9-1. Acquisition of Record and Delivery (Business Program)

Contract rebundle check processing described in step 2211 of FIG. 23will be described with reference to FIG. 24.

The CPU 203 acquires all the transaction record under the same contract(step S2401). For example, in step 2093 shown in FIG. 28, thetransaction records 281 and 282 specified by the policy number “00001”indicating that both are the same contract, are extracted respectively.Here, the record 281 and the record 282 are records having the samecontract number 601 and different branch number 611.

Upon acquisition of all the records, the CPU 203 delivers all theacquired record data and the predetermined processing name(s) to thewrapper program A2092 a (step S2403). For example, since processingregarding “setting-up class of annuity” and “setting-up payment period”have been executed in the above description, the CPU 203 delivers themunder a processing name of “contract rebundle check of annuityclass—payment period” in order to carry out the contract rebundle checkprocessing corresponding to these processing.

4-3-9-2. Specification of Contract Rebundle Definition Body (WrapperProgram A)

Upon delivery, the wrapper program A2092 a specifies a basic policyrecord in accordance with the main-rider-identifying-section 613 of theentire record and delivers the entire record and processing name to thecontract rebundle definition program 2095 specified based on a clause IDof the basic policy record (step S2421).

For example, in the record 281 shown in FIG. 28, the contract rebundledefinition program 2095 is specified in accordance with a clause ID 603“11111” of the record 281 because the main-rider-identifying-section 613indicates the basic policy (“1”). Further, the CPU 203 delivers the“contract rebundle check of annuity class—payment period” as aprocessing name.

4-3-9-3. Generation of Processing Program (Contract Rebundle DefinitionProgram)

The CPU 203 executing the contract rebundle definition program 2095carries out the processing program generation part 2151 and acquires aprocessing code corresponding to the inherited processing name byconducting a search of the processing code storage part 2153 (stepS2441). Processing codes are written in the processing code storage part2153 for each combination group of the clause IDs and for eachprocessing name. For example, the CPU 203 implementing the contractrebundle definition program 2095 acquires a processing code whoseprocessing name “contract rebundle check of annuity class—paymentperiod” out of the processing code group whose combination group ofclause ID is a combination of “11111” and “22222”.

Subsequently, the CPU 203 further acquires check data corresponding tothe inherited processing name by conducting a search for the check datastorage part 2155 (step S2433). Check data is recorded on the check datastorage part 2155 for each combination group of each processing name andeach clause ID. For example, the CPU 203 acquires the “contract rebundlecheck of annuity class—payment period” out of the processing code groupwhose combination group of clause ID is a combination of “11111” and“22222”.

The CPU 203 generates a processing program based on a processing codeobtained from processing code storage part 2153 and check data acquiredfrom the check data storage part 2155 (step S2455).

FIG. 29 a shows a structural example of the processing program thusgenerated. The processing program 291 is a processing program forexecuting the “contract rebundle check of annuity class—payment period”when the combination group of clause ID is “11111-22222”. Such checkdata means only the data in which the insurance class is “whole lifeannuity with guaranteed installment” and the payment period is “wholelife” can be stored. In other words, it is indicated that the annuityclass and payment and payment period capable of being stored in thetransaction database 2093 are limited to a combination of “whole lifeannuity with guaranteed installment and “whole life” in relationshipbetween the clause ID “11111” and the clause ID “22222”. In this way,sales, maintenance and handling conditions can be set up in anappropriate manner in a relation to other contracts (the basic policy orrider) which are sold as the same insurance product considering

4-3-9-4. Acquisition of Contractual Coverage to be Checked (ContractRebundle Definition Program)

The CPU 203 executing the contract rebundle definition program 2095acquires contractual coverage corresponding to the contractual IDrecognized as data to be checked for the data stored in the work region(step S2447). For example, in the above step S2207, “annuity class” and“payment period” are recognized as data to be checked and processing foracquiring contractual coverage is performed in accordance with acontractual coverage ID representing these because set-up processing of“annuity class” and “payment period” has been executed. FIG. 25 shows aflowchart of the contractual coverage acquisition processing.

The CPU 203 executing the contract rebundle definition program 2095delivers to the wrapper program B the clause ID, the processing name andthe contractual coverage ID stored in the record in which thecontractual ID to be checked (step S2501). For example, clause ID“11111”, processing name “acquisition of annuity class” and “acquisitionof payment period”, contractual coverage ID “02(annuity class)” and“01(payment period” are delivered thereto.

In a processing program request/execution part 2171, the CPU 203executing the wrapper program B2092 b specifies a clause definitionprogram in accordance with the clause ID inherited from the contractrebundle definition program 2095 and delivers the processing name to theclause definition program 2096 (step S2521). For example, the clausedefinition program 2096 is specified in accordance with the clause ID“11111” and delivers the processing name “acquisition of annuity class”and “acquisition of payment period” thereto.

4-3-9-5. Acquisition of Contractual Coverage to be Checked (ClauseDefinition Program)

Upon delivery, the CPU 203 carries out the processing program generatingpart 2191 of the clause definition program 2096 and acquires aprocessing code corresponding to the inherited processing name from theprocessing code storing part 2193 (step S2541). In the processing coderecording part 2193, processing codes are recorded for each processingname. For example, the CPU 203 acquires a processing code named as“acquisition of annuity class”.

Subsequently, the CPU 203 acquires from the combination data storagepart 2195 combination data of both contractual coverage and contractualcoverage ID corresponding to the inherited processing name (step S2543).In the combination data storage part 2195, combination data is recordedfor each contract condition. For example, the CPU 203 acquirescombination data whose contract condition is “class of annuity”.

4-3-9-6. Generation of Processing Program (Clause Definition Program)

The CPU 203 executing the clause definition program 2096 generates aprocessing program in accordance with both the processing code andcombination data being acquired (step S2545). FIG. 30 shows a diagramillustrating a structural example of the processing program thusgenerated. Such processing program 300 comprises a processing code 301and combination data 303. A program code for carrying out processing“acquisition of annuity class” is described in the processing code 301,for example. Such description format of the program code may either be asource code or an object code.

In the combination data 303, a contractual coverage ID and combinationdata of the contractual coverage used by the program code for processing“annuity class acquisition” are described. The description format of thecombination data can be any format capable of identifying thecontractual coverage corresponding to the contractual ID at theexecution of the program code. Formats such as a sequence format and atable format and the like correspond to the description format.

Similarly, the CPU 203 generates a processing program on “acquisition ofpayment period”.

The CPU 203 implementing the clause definition program 2096 delivers theprocessing program 300 thus generated to the wrapper program B2092 b(step S2547). For example, the CPU 203 carries out steps for deliveringthe processing program 300 using a redirect function and a pipe functionand so on.

4-3-9-7. Execution of Processing Program

In the wrapper program B2092 b, the CPU 203 executes the processingprogram 300 inherited from the clause definition program 2096, andacquires contractual coverage corresponding to the contractual coverageID obtaining from the work region (step S2523). FIG. 26 shows aflowchart of the processing program 300 executed at that time. Inexecution of the processing program 300, the CPU 203 inputs acontractual coverage ID from the work region (step S2601). For example,“02” is inputted as the contractual coverage ID.

The CPU 203 reads in a piece of combination data of a contractualcoverage ID and the contractual coverage from the combination data 303stored in the processing program 300 (step S2603). For example, acontractual coverage ID “01” and the combination data 803 of combinationdata 3031 of the contractual coverage “annuity certain” are read in fromthe combination data of the processing program 300 shown in FIG. 30.

Then the CPU 203 judges whether or not the inputted contractual coverageconforms to the contractual coverage of the combination data thus readin (step S2605). For example, a judgment whether or not the contractualcoverage ID “02” thus inputted conforms to the contractual coverage ID“01” of the combination data initially read in.

The process returns to step S2603 and carries out the step S2605 againif both the contractual IDs do not conform in steps S2605 (step S2605,NO). The process proceeds the step S2607 when both the contractual IDsconform and acquire the contractual coverage correspondently stored tothe contractual coverage ID of the combination data (step S2607). Forexample, since the contractual coverage ID “02” conforms to thecontractual coverage ID of the combination data 3023 (combination of thecontractual coverage ID “02” and the contractual coverage “whole lifeannuity with guaranteed installment”) secondly read in, the contractualcoverage ID “02” acquires a contractual coverage “whole life annuitywith guaranteed installment” corresponding to the result.

In FIG. 25, the CPU 203 carrying out the wrapper program B delivers theacquired contractual coverage to the contract rebundle definitionprogram 2095 (step S2525). For example, a contractual coverage “wholelife annuity with guaranteed installment” is delivered to thecontractual coverage ID “02” and a contractual coverage “whole life” isdelivered to the contractual coverage ID “01”.

In FIG. 24, the CPU 203 executing the contract rebundle definitionprogram 2095 sets up so that the above-described contractual coverage isincorporated as a part of the processing program (step S2449). Forexample, contractual coverage according to data to be checked isincorporated into a processing program 291 shown in FIG. 29 a and makesit to another processing program 293 shown in FIG. 29 b. Hence, the CPU203 reads in data to be checked 2931 and may judge whether or not thedata 2931 conforms to data to be checked 2933 at the execution of theprocessing program 293.

The CPU 203 implementing the contract rebundle definition program 2095delivers to the wrapper program A2092 a the processing program thusgenerated (step S2451).

4-3-9-8. Execution of Processing Program (Wrapper Program A)

In the wrapper program A2092 a, the CPU 203 carries out the processingprogram 293 inherited from the contract rebundle definition program 2095and judges whether or not the contractual coverage corresponding to thecontractual coverage ID as data to be checked stored in the work regionconforms to the contractual coverage of the data to be checked (stepS2423, FIG. 24). FIG. 27 shows a flowchart of the processing program 293executed at that time.

In execution of the processing program 293, the CPU 203 reads in data tobe checked for annuity class and that of payment period incorporatedinto and set-up into the processing program (step S2701). For example,combination data 2931 (FIG. 29 b) of annuity class “whole life annuitywith guaranteed installment” and a contractual coverage “whole life” isread in.

The CPU 203 judges reading-in of the data to be checked (step S2703,NO), and reads in one combination data of the annuity class and thepayment period from check data 2933 (step S2705). For example,combination data 2933 of the annuity class “whole life annuity withguaranteed installment” and the payment period “whole life” is read infrom the check data 2933 in the processing program 293 shown in FIG. 29b.

The CPU 203 judges whether or not combination data of contractualcoverage read in from the checked data conforms to that of contractualcoverage read in from the check data 2931 (step S2707). For example, itis judged whether or not the combination data 2931 (annuity class “wholelife annuity with guaranteed installment”, payment period “whole life”)read in at step S2701 conforms to the combination data 2933 (annuityclass “whole life annuity with guaranteed installment”, payment period“whole life”) of the initial contractual coverage of the checked data.

In step S2707, no match is found for the combination data of thecontractual coverage, the process returns to step S2703 and repeats thesame processing (step S2707, NO). On the other hand, the processproceeds to step S2709 and flags an updatable flag when the combinationdata of the contractual coverage ID matches (step S2709). For example,since the combination data 2931 representing the contractual coverage“whole life annuity with guaranteed installment” and “whole life” in thedata to be checked conforms to the combination data 2933 initially readin, the updatable flag is turned ON and the processing ends. There isonly one combination data to be the data to be checked in thisembodiment, but a plurality of combination data may exit.

The CPU 203 turns the updatable flag OFF when the CPU 203 judges thatthe combination data of all the check data 2933 is read in at step S2703(step S2711). In other words, since combination data of contractual datain the checked data does not exist in the combination data ofcontractual data in the check data in this case, it is judged that acombination of contractual IDs of annuity class and payment perioddefined in the work region can not be set.

The CPU 203 executing the wrapper program A2092 a notifies a result ofexecution to the business program 2091 (step S2425, FIG. 24 a). Forexample, processing to return the updatable flag “1 (ON)” to a programthread of the business program 2091 as a return value is carried out.

4-3-9-9. Updating Record

Upon completion of implementing contract rebundle check processing (step2211) in FIG. 23, the CPU 203 executing the business program 2091 judgeswhether or not update of the transaction data based on the data recordedin the work region can be executed in accordance with the updatable flag(step S2213). The CPU 203 updates the transaction data of thetransaction database 2093 as a result of a judgment that it can beupdated when the updatable flag is in an on-state (step S2215).

For example, the transaction record 281 shown in FIG. 28 becomes atransaction record 285 as a result of the update. As show in FIG. 28,“01” of the variable 1_605 and “02” of the variable 2_607 in the record281 are updated as “02” of the variable 1_605 and “01” of the variable2_607 in the record 285.

Further, the CPU 203 outputs an error message indicating that no updatecan be done on the display 201 as a result of judging non-update thereofwhen the updatable flag is in an off-state. The CPU 203 prompts theoperator to change the input value of data (step S2214).

4-4. Processing Details (2)

Although, an example for limiting the contractual coverage ID capable ofsetting-up in relation to other contracts of the same insurance productis described in the processing details (1), an example for limiting datavalues capable of setting-up in relation to other contracts of the sameinsurance product will be described in processing details (2).

Processing details (2) of this embodiment will be described withreference to FIGS. 22 a, 23 a, 24 a, 27 a, 31 and 32 and so on. In thisembodiment, the business program 2091 is an application program formanaging contractual data of life insurance and product data. FIG. 22 ashows a functional block diagram of the business program 2091, a wrapperprogram A2092 a, the contract rebundle definition program 2095.

The business program 2091 includes a main processing part 2111 forexecuting processing on user interface such as image processing and adatabase.

The wrapper program A2092 a comprises a processing programrequest/execution part 2131 requesting a processing program to thecontract rebundle definition program 2095 and implementing the program.

The contract rebundle definition program 2095 comprises a processingprogram generation part 2151 for generating a processing program onreceipt of a request from the wrapper program A2092 a, a processing codestorage part 2153 storing processing codes for each processing name, acheck data storage part 2155 storing predetermined check data for eachprocessing name (in the case that main clause ID is “11111” forexample).

In this embodiment, an example of checking whether or not data to bestored in the transaction database 2093, the data on insurance premiumis in a predetermined range will be described when a command to reducingthe insurance premium of an insurance product is input by a user.

FIG. 23 a is a flowchart of a business program 2091 executed by the datamanagement apparatus 1 in the above cases.

4-4-1. Acquisition of Screen-Image Data

FIG. 31 shows a screen-image of an insurance amount change screen 310displayed on the display 201 under the execution of the main processingpart 2111 (FIG. 22 a) in the business program 2091. An entry field forpolicy number 3101, a display field for plan name 3103, an entry fieldfor insurance amount 3105, a display field for monthly premium 3107 anda display field for total insurance premiums 3109 and so on aredisplayed on this screen.

The operator of the data management apparatus 1 can instruct change ofinsurance amount for life insurance specified by a predetermined policynumber. For example, the operator inputs “00002” into the entry fieldfor policy number 3101 with the key board/mouse 207, the CPU 203executing the business program 2091 accesses to and conduct a search forthe transaction database 2093 for displaying plan name, insurance amountand total insurance premiums on the insurance amount change acreen 310.Here, total insurance premiums are calculated by adding up monthlypremium of each insurance policy with the CPU 203.

Once the operator performs an operation for changing the insuranceamount, the CPU 203 implementing the business program 2091 detects theoperation and automatically displays a total amount of insurancepremiums of the display field for monthly premium 3107 and the displayfield for total insurance amount again. Such operator instructs theupdate to the transaction database 2093 by pressing a set-up button 3111upon confirmation of the insurance premiums displayed again.

Upon the depression of the set-up button 3111, the CPU 203 implementingthe main processing part 2111 acquires screen-image data (steps S2310,FIG. 23 a). For example, the CPU 203 acquires a policy number “00002”and the total insurance premiums “4500 yen” as screen-image data.

4-4-2. Processing of Contract Rebundle Check

The CPU 203 acquiring the screen-image data carries out contractrebundle check processing (step S2303). The contract rebundle checkprocessing shown in step S2303 in FIG. 23 a will be described withreference to FIG. 24 a. FIG. 24 a is a view from which step S2447 iseliminated from the steps shown in FIG. 24, basically, similar steps arecarried out. Difference between the steps of FIG. 24 and that of FIG. 24a will be described hereunder.

4-4-2-1. Start-Up of Wrapper Program (Business Program)

In the business program 2091, the CPU 203 acquires all the transactionrecord under the same contract (step S2401). For example, in thetransaction database 2093 shown in FIG. 32, the transaction records 321and 323 specified by the policy number “00002” indicating that both arethe same contract, are extracted respectively. Here, the records 321 and323 are records having the same contract number 601 and different branchnumber 611.

Upon acquisition of all the records, the CPU 203 delivers all theacquired record data and the predetermined processing name(s) to thewrapper program A2092 a (step S2403). Since the processing for changinginsurance amount has been performed in the above-description, thecontract rebundle check processing for checking whether or not themonthly premium to be determined according to the change is executed,for example. Thus, the CPU 203 delivers to the wrapper program A2092 a“contract rebundle check of insurance premiums”.

4-4-2-2. Specification of Contract Rebundle Definition Body (WrapperProgram A)

Upon delivery, the wrapper program A2092 a specifies a basic policyrecord in accordance with the main-rider-identifying-section 613 of theentire record and delivers the entire record and processing name to thecontract rebundle definition program 2095 specified based on a clause IDof the basic policy record (step S2421).

For example, in the record 321 shown in FIG. 32, the contract rebundledefinition program 2095 is specified in accordance with a clause ID 603“11111” of the record 321 because the main-rider-identifying-section 613indicates the basic policy (“1”). Further, the CPU 203 delivers the“contract rebundle check of insurance premiums” as a processing name.

4-4-2-3. Generation of Processing Program (Contract Rebundle DefinitionProgram)

The CPU 203 executing the contract rebundle definition program 2095carries out the processing program generation part 2151 and acquires aprocessing code corresponding to the inherited processing name byconducting a search of the processing code storage part 2153 (stepS2441). Processing codes are written in the processing code storage part2153 for each combination group of the clause IDs and for eachprocessing name. For example, the CPU 203 implementing the contractrebundle definition program 2095 acquires a processing code whoseprocessing name “contract rebundle check of insurance premiums” out ofthe processing code group whose combination group of clause ID is acombination of “11111” and “33333”.

Subsequently, the CPU 203 further acquires check data corresponding tothe inherited processing name by conducting a search for the check datastorage part 2155 (step S2443). Check data is recorded on the check datastorage part 2155 for each combination group of each processing name andeach clause ID. For example, the CPU 203 acquires the “contract rebundlecheck of insurance premiums” out of the processing code group whosecombination group of clause ID is a combination of “11111” and “33333”.

The CPU 203 generates a processing program based on a processing codeobtained from processing code storage part 2153 and check data acquiredfrom the check data storage part 2155 (step S2445).

FIG. 29 c shows a structural example of the processing program thusgenerated. The processing program 295 is a processing program forexecuting the “contract rebundle check of insurance premiums” when thecombination group of clause ID is “11111-33333”. Such check data meansonly the data in which a sum total of monthly premium is equal or morethan “4000 yen” can be stored. In this way, the total insurance premiumsas a part of sales-handling conditions can be set up in an appropriatemanner in a relation to other contracts (the basic policy or rider)which are sold as the same insurance product considering.

The CPU 203 implementing the contract rebundle definition program 2095delivers to the wrapper program A2092 a the processing program thusgenerated (step S2451).

4-4-2-4. Execution of Processing Program (Wrapper Program A)

In the wrapper program A2092 a, the CPU 203 carries out a processingprogram 295 inherited from the contract rebundle definition program 2095and judges whether or not a sum total of monthly premium recorded in thework region is in a predetermined range (step S2423, FIG. 24 a). FIG. 27a shows a flowchart of the processing program 295 executed at that time.

In execution of the processing program 295, the CPU 203 reads in checkdata of “insurance premiums equal or more than 4000 yen” incorporatedinto and set-up into the processing program (step S2721). Furthermore,the sum total of insurance premiums as a data value to be checked isread from the work region (step S2723). For example, a sum total ofinsurance premium “4500 yen” after implementing a change operation isread in.

The CPU 203 judges whether or not the checked data to be read in is in adata range in accordance with the data range read in the check data(step S2725). For example, it is judged whether or not the sum totalpremium “¥4500” is in the data range in accordance with the data rangeof “insurance premiums equal or more than ¥4000”.

The process proceeds to step 2727 and flags an updatable flag when thechecked data is in the predetermined data range in step S2725, (stepS2727). For example, an updatable flag is flagged and then the processends because the sum total insurance premiums “¥4500” conforms to thedata range of “insurance premiums equal or more than ¥4000”.

On the other hand, when the checked data is not in the range in stepS2725, the process proceeds to step S2729 and flags a non-updatable flag(step S2729). For example, a non-updatable flag is flagged when the sumtotal insurance premiums is less than “¥4000”

In step S2423 shown in FIG. 24 a, the CPU 203 executing the wrapperprogram A2092 a notifies a result of execution to the business program2091 (step S2425, FIG. 24 a). For example, processing to return theupdatable flag “1(ON)” to a program thread of the business program 2091as a return value is carried out.

4-4-2-5. Updating Record

Upon completion of implementing contract rebundle check processing (step2303) in FIG. 23 a, the CPU 203 executing the business program 2091judges whether or not update of the transaction data based on the datarecorded in the work region can be executed in accordance with theupdatable flag (step S2305). The CPU 203 updates the transaction data ofthe transaction database 2093 as a result of a judgment that it can beupdated when the updatable flag is in an on-state (step S2307).

For example, the transaction record 321 shown in FIG. 32 becomes atransaction record 325 as a result of the update. As show in FIG. 32,“¥4000” of the insurance premiums 615 is updated as “¥3000” of theinsurance premiums 615 in the record 325.

Further, the CPU 203 outputs an error message indicating that no updatecan be done on the display 201 as a result of judging non-update thereofwhen the updatable flag is in an off-state. The CPU 203 prompts theoperator to change the input value of data (step S2306).

4-5. Processing Details (3)

Although, an example for limiting the contractual coverage ID capable ofsetting-up in relation to other contracts of the same insurance productis described in the processing details (1) and another example forlimiting data values capable of setting-up in relation to othercontracts of the same insurance product will be described in processingdetails (2), still another example for specifying name of an insuranceproduct in relation to other contracts of the same insurance productwill be described in processing details (3).

Processing details (3) of this embodiment will be described withreference to FIGS. 22 b, 23 b, 24 b, and 31 and so on. In thisembodiment, the business program 2091 is an application program formanaging contractual data of a life insurance and product data. FIG. 22b shows a functional block diagram of the business program 2091, awrapper program A2092 a and the contract rebundle definition program2095.

The business program 2091 includes a main processing part 2111 forexecuting processing on user interface such as image processing and adatabase.

The wrapper program A2092 a comprises a processing programrequest/execution part 2131 requesting a processing program to thecontract rebundle definition program 2095 and implementing the program.

The contract rebundle definition program 2095 comprises a processingprogram generation part 2151 for generating a processing program onreceipt of a request from the wrapper program A2092 a storing processingcodes for each processing name and the name data storage part 2158storing predetermined name data for each processing name (in the casethat main clause ID is “11111” for example).

In this embodiment, an example of acquiring name data indicating apredetermined insurance product specified in accordance with contractdata in association with inputted policy number during display ofinsurance products will be described.

FIG. 23 b is a flowchart of a business program 2091 executed by the datamanagement apparatus 1 in the above cases.

4-5-1. Acquisition of Screen-Image Data

FIG. 31 shows a screen-image of an insurance amount change image 310displayed on the display 201 under the execution of the main processingpart 2111 (FIG. 22 b) in the business program 2091. The entry field forpolicy number 3101, the display field for plan name 3103, the entryfield for insurance amount 3105, the display field for monthly premium3107 and the display field for total insurance premiums 3109 and so onare displayed on this screen.

The operator of the data management apparatus 1 inputs a predeterminedpolicy number in the entry field for policy number 3101 at a previousstage of instructing “changing insurance amount” described in theprocessing details (2) and makes to display the transaction data and thelike on the display. In this embodiment, an example of simultaneouslyacquiring a plan name displayed on the display field for plan name 3103of the insurance amount change image 310 at that time will de described.

When the operator inputs “00002” into the entry field for policy number3101 with the key board/mouse 207, the CPU 203 executing the businessprogram 2091 detects such operation and acquires data on a policy number(step S2301). For example, the CPU 203 acquires policy number data“00002” as screen-image data.

4-5-2. Processing of Contract Rebundle Check

The CPU 203 acquiring the screen-image data carries out contractrebundle check processing (step S2303). The contract rebundle checkprocessing shown in step S2303 in FIG. 23 b will be described withreference to FIG. 24 b.

4-5-2-1. Start-Up of Wrapper Program (Business Program)

In the business program 2091, the CPU 203 acquires all the transactionrecord under the same contract (step S2401). For example, in thetransaction database 2093 shown in FIG. 32, the transaction records 321and 323 specified by the policy number “00002” indicating that both arethe same contract, are extracted respectively. Here, the records 321 and323 are records having the same contract number 601 and different branchnumber 611.

Upon acquisition of all the records, the CPU 203 delivers all theacquired record data and the predetermined processing name(s) to thewrapper program A2092 a (step S2403). Since the processing fordisplaying information on insurance products in accordance with thepolicy numbers has been performed in the above-description, the contractrebundle check processing for acquiring plan name(s) to be displayedcooperatively with the display processing, is carried out, for example.Thus, the CPU 203 delivers to the wrapper program A2092 a “plan name”.

4-5-2-2. Specification of Contract Rebundle Definition Body (WrapperProgram A)

Upon delivery, the wrapper program A2092 a specifies a basic policyrecord in accordance with the main-rider-identifying-section 613 of theentire record and delivers the entire record and processing name to thecontract rebundle definition program 2095 specified based on a clause IDof the basic policy record (step S2421).

For example, in the record 321 shown in FIG. 32, the contract rebundledefinition program 2095 is specified in accordance with a clause ID 603“11111” of the record 321 because the main-rider-identifying-section 613indicates the basic policy (“1”). Further, the CPU 203 delivers the“plan name” as a processing name.

4-5-2-3. Generation of Processing Program (Contract Rebundle DefinitionProgram)

The CPU 203 executing the contract rebundle definition program 2095carries out the processing program generation part 2151 and acquiresname data corresponding to the inherited processing name by conducting asearch on the name data acquisition part 2158 (step S2442). Name data iswritten in the name data acquisition part 2157 for each combinationgroup of the clause IDs and for each processing name.

For example, the CPU 203 implementing the contract rebundle definitionprogram 2095 acquires name data whose processing name “plan name” out ofthe processing code group whose combination group of clause ID is acombination of “11111” and “33333”. An insurance product name “annuityB” is recorded in the “plan name” as an actual data.

The CPU 203 implementing the contract rebundle definition program 2095delivers to the wrapper program A2092 a the name data obtained from thename data acquisition part 2158 (step S2452). Further, the CPU 203executing the wrapper program A2092 a delivers to the business program2091 the name data acquired from the contract rebundle definitionprogram 2095 (step S2426).

4-5-2-4. Display of Name Data

In FIG. 23 b, upon completion of the contract rebundle check processing(step S2303), the CPU 203 implementing the business program 2091displays the acquired name data on the display 201 as insurance productsname corresponding to the policy number obtained in step S2301 (stepS2309).

For example, “annuity B” is displayed on the display field for plan name3103 of the insurance amount change image 310 shown in FIG. 31 as aninsurance product name.

4-6. Conclusion

As described in the above, in the case of handling data in interrelatedplural transactions, it is possible to judge whether or not such dataconform to predetermined conditions in accordance with the presentinvention. The present invention further enables to set-up and usepredetermined data such as plan name and so on for each combination ofthe data during handling of data in interrelated plural transactions.

It is, therefore, possible to handle transaction data taking intoconsideration the consistency with a basic policy transaction and arider transaction even when a plurality of riders are added to one basicpolicy, especially, in the field of the life insurance.

In addition, it is not necessary to describe any check logic accordingto merchantability of insurance policy at business program side byconstructing so that a contract rebundle definition program is specifiedbased on a clause ID of the basic policy record of an insurancecontract, and implement check processing of data to be checked checkwith a processing program being generated using a processing code andcheck data of a check program in the specified clause definitionprogram. In this way, maintenance-ability of the business program can beincreased.

The construction in which contractual coverage (data contents)corresponding to contractual coverage IDs (data contents IDs) capable ofbeing set-up to the contract rebundle definition program is recorded, isdescribed in the processing details (1), instead of the contractualcoverage (data contents), contractual coverage IDs capable of beingset-up thereto can be recorded, alternatively. In that case, there is noneed for acquiring contractual coverage from the clause definitionprogram in accordance with the contractual coverage IDs recorded in thework region and whether or not recording the transaction data in thework region can be judged by directly comparing the contractual coverageIDs.

5. Fifth Embodiment

As described in the above, in life insurance, it is common to sell oneinsurance product in which two or more riders are added to one basicpolicy. When the basic policy transaction and a rider transaction aremanaged on the same database, and the basic policy transaction existsand a new rider transaction is added, it may be influenced of theproduct data applied to the basic policy transaction depending on thedata item recorded on the database.

For example, when the basic policy is “insurance for life” and “riderfor term insurance” is added, it is necessary to set up the contractdate of “rider for term insurance” as “the same as that of aresponsibility start date”. Also, when the basic policy is an“individual annuity” and “rider for term insurance” is added as well, itis necessary to set up the contract date of “rider for term insurance”as “four days after a responsibility start date”. Here, the “contractdate” is a date of record of calculation, such as age at entry and aninsurance period. Moreover, “the responsibility start date” is a daywhen security of the contract offered the “responsibility start date” isstarted.

Under the circumstances, considering the processing which add “rider forterm insurance”, it can respond by incorporating a judgment logic whichsets a contract date into a clause definition program of the rider inaccordance with the basic policy whenever basic policy of a new productis added. However, maintenance-ability decreased remarkably when thekind of basic policy increases in the case of selling new productsbecause change arises in all clause definition programs of the ridercapable of being added to the basic policy of new products

Then, in this embodiment, a data management apparatus having a highermaintenance-ability without requiring the incorporation of the judgmentlogic even when a basic policy is added, will be described.

Similar to the fourth embodiment, the term “product definition data”described in the embodiments 1 through 3 is read as “clause definitiondata” in this embodiment.

5-1. Functional Block Diagram

A functional block diagram of a data management apparatus 1 according tothe present invention is identical to that shown in either of FIG. 1 andFIG. 20.

5-2. Hardware Structure

A hardware structure of a computer device with a CPU which realizes thedata management apparatus 1 according to the present invention isbasically the same as that shown in either of FIG. 2 and FIG. 21.

5-3. Processing Details

Processing details according to this embodiment will be described withreference to FIGS. 33 through 38. In this embodiment, a business program3301 is an application program for managing contractual data and productdata of life insurance. FIG. 33 shows a functional block diagram of thebusiness program 3301, a wrapper program A3303, a clause definitionprogram 3305 for a rider and so on, a wrapper program B3307 and eitherof a clause definition program 3309 and 3311 of the basic policy.

The business program 3301 includes both a main processing part 3321implementing processing on a user interface such as display processingand processing on database and a processing program execution part 3323for implementing the processing program.

The wrapper program A3303 comprises a processing program request part3325 for requesting the processing program to the clause definitionprogram 3305.

The clause definition program 3305 comprises a processing programgeneration part 3326 for generating a processing program on receipt of arequest from the wrapper program A3303, a processing code storage part3327 storing processing codes for each processing name, and anotherclause definition body referencing part 3329 for acquiring a processingprogram from either of clause definition programs 3309 and 3311 and soon according to other clause IDs via the wrapper program B3307 (in thecase that main clause ID is “55555” for example).

In this embodiment, a case in which a user instructs a command to add arider “rider for term insurance” to the basic policy “individualannuity” specified by a policy number will be described. FIG. 34 is aflowchart of the business program 3301, the wrapper program A3303, theclause definition program 3305, the wrapper program B3307 and the clausedefinition programs 3311 of the basic policy, executed by the datamanagement program.

5-3-1. Acquisition of Screen-Image Data

FIG. 36 shows a screen-image of an insurance policy change screen 360displayed on the display 201 under the execution of the main processingpart 3321 (FIG. 33) in the business program 3301. An entry field forpolicy number 361, an entry field of insurance policyholder's name 362,a date coding field 368, a basic policy display field 363, a rider 1display field 364, a rider 3 display field 365, a rider 2 display field366 and a set-up button 367 and so on are displayed on this screen, andthe operator of the data management apparatus 1 can instruct change ininsurance contracts by adding rider(s) on the transaction data for lifeinsurance specified by a predetermined policy number. For example, theoperator inputs “00003” into the entry field for policy number 361 withthe key board/mouse 207 and displays “individual annuity” on the basicpolicy display field 363 and “accident hospitalization” on the rider 1display field 364 respectively. In other words, the insurance contractspecified by “00003” shows that “accident hospitalization” is added tothe basic policy “individual annuity”.

Thereafter, the operator instructs execution of adding “rider for terminsurance” to the basic policy of the insurance contract specified by“00003” by selecting “rider for term insurance” with a drop-down menuand clicking the set-up button 367.

Upon clicking the set-up button 367, the CPU 203 executing the mainprocessing part 3321 acquires screen-image data (step S3401, FIG. 34).For example, the CPU 203 acquires policy number “00003” and rider “riderfor term insurance” as the screen-image data.

5-3-2. Generation of Work Record

The CPU 203 executing the main processing part 3321 generates a workrecord for recording it as rider record into the transaction database2093 in accordance with a policy number and information on rider and thelike inputted as screen-image data (step S3403).

FIG. 35 shows an example of the work record, Such work record consist ofthe same recording format to that of the transaction database 2093, apolicy number 351, a branch number 352, a clause ID 353, variables 1through 3 355, a main clause ID 357, contract date 359 andresponsibility start date 311 so on are recorded therein.

Here, the policy number 351 is a data ID for specifying transactionrecord, the branch number 352 is a data ID for specifying the sameinsurance contract managed by the same policy number, the variables 1through 3_355 are contractual coverage IDs for specifying respectivecontractual coverage, the contract date 359 is for recording theabove-described “contract date” and the responsibility start date 311 isfor recording the above mentioned “responsibility start date”.

For example, the CPU 203 generates a work record 3501 shown in FIG. 35in accordance with data acquired from the image screen data and the likein order to record transaction data specified by the policy number“00003”. In FIG. 35, “00003” is recorded as the policy number 351, “003”is stored as its branch number 352, “55555” is recorded as the clause ID353 corresponding to rider “rider for term insurance”, “01”, “01” and“05” are respectively stored as the variables 1 through 3_355 showingdata contents IDs, “00005” is recorded as main clause ID indicating asbasic policy such as “individual annuity” and “Sep. 27, 2005” is storedas the responsibility start date 311 according to the date coding field368.

Here, with regard to the contract date 359, data is set with referenceto the clause definition program 3305 because set-up conditions varydepending on a clause of the basic policy to which the rider is added.For example, the clause definition program 3305 of a clause ID “55555”is referred.

5-3-3. Execution of Wrapper Program

The CPU 203 executing the business program 3301 delivers to the wrapperprogram A3303 the working record 3501 including clause ID and theprocessing name specified according to operator's instruction (step S3405). For example, processing for writing the generated work record3501 into the transaction database 2093 need to be carried out asdescribed in the above when an instruction to add rider “rider for terminsurance” is made on the insurance policy change screen 360. As aconsequence, the CPU 203 carries our processing for acquiring datastored on the contract date 359 in order to set up all the necessarydata items in the work record 3501.

For example, the CPU 203 delivers a processing name such as “contractdata calculation” acquired through the work record 3501 and theexecution of the main processing part 3321.

5-3-4. Execution of Wrapper Program A

The CPU 203 executing the wrapper program A3303 specifies a clausedefinition program in accordance with the clause ID 353 of the workrecord 3501 inherited from the business program 3301 in the processingprogram request part 3325 and delivers the processing name to thespecified clause definition program (step S3421).

For example, the clause definition program 3305 is specified inaccordance with the clause ID 353 of “55555” and a processing name of“contract data calculation” is delivered.

5-3-5. Execution of Clause Definition Program (Rider)

The case where a processing code is delivered to the clause definitionprogram 3305 having the clause ID of “55555” will be describedhereunder. Upon delivery the CPU 203 conduct a search for the processingcode storage part 3327 of the clause definition program 3305 and judgeswhether or not a processing code corresponding to the inheritedprocessing name exists (step S3441).

If no processing code corresponding to the inherited processing nameexist in the processing code storage part 3327 of the clause definitionprogram 3305 and there is a description of referencing the main clause(step S3441, NO), the CPU 203 executes another clause definition bodyreferencing part 3329 and delivers the main clause ID and the processingname stored in the work record to the wrapper program B3307 (stepS3443). For example, the main clause ID 357 “00005” and processing name“contract data calculation” are delivered to the wrapper program B3307when there is a description of “conform to the main clause” in theprocessing code storage part 3327 as shown in FIG. 33.

A processing program is generated at the processing program generationpart (step S3445), when a processing code corresponding to the inheritedprocessing name exists (step S3441, YES).

5-3-6. Execution of Wrapper Program B

The CPU 203 executing the business program B3307 specifies anotherclause definition program in accordance with the main clause IDinherited from the clause definition program 3305 in a processingprogram requesting part 3331 and delivers to the clause definitionprogram thus specified the processing name (step S3461).

For example, the clause definition program 3311 is specified inaccordance with the main clause ID 357 “00005” and the processing name“contract data calculation”.

5-3-7. Execution of Clause Definition Program (Basic Policy)

Upon delivery, the CPU 203 executes the processing program generationpart of the clause definition program and acquires a processing codecorresponding to the inherited processing name by conducting a searchfor the processing code storage part (step S3481). For example, in aprocessing code storage part 3335 of the clause definition program 3311a description that calculation starts “four days after a responsibilitystart date” is made as a processing code indicating a method ofcalculating a contract date.

The CPU 203 performing a processing program generation part 3333generates a processing program in accordance with the processing codeacquired from the processing code storage part (step S3483).

FIG. 37 shows an example of structure of the processing program thusgenerated. For example, a program code for handling “contract datacalculation” is described in the processing code 373. The descriptionformat of the processing program can either be a source code and anobject code.

5-3-8. Delivery of Processing Program

The CPU 203 executing the clause definition program delivers theprocessing program thus generated to the wrapper program B3307 (stepS3485). For example, the CPU 203 performing the clause definitionprogram 3311 carries out processing program 370 (FIG. 37) using aredirect function and a pipe function and so on.

Upon delivery, the CPU 203 performing the wrapper program B3307 deliversthe inherited processing program to the clause definition program 3305(step S3463). Upon such delivery, the CPU executing the clausedefinition program 3305 delivers to the wrapper program A3303 theinherited processing program (step S3447). Upon such delivery of theprocessing program, the CPU carrying out the wrapper program A3303delivers the inherited processing program to the business program 3301(step S3423).

5-3-9. Execution of Processing Program

In the business program 3301, the CPU 203 performs the inheritedprocessing program 370 and acquires a contract date for setting uptransaction data for rider obtained via the image screen data (stepS3407).

FIG. 38 shows a flowchart of the processing program 370 executed at thattime. In implementing the business program 370, the CPU 203 reads in aresponsibility start date via the screen image data acquired in thebusiness program 3301 (step S3701).

For example, current day date data “Sep. 27, 2005” on the date codingfield 368 in the screen-image of an change screen 360 shown in FIG. 36is read in as a responsibility start date. Subsequently, the CPU 203calculates the date of four days after a responsibility start date undera predetermined calendar calculation program (step S3703). For example,it calculates four days after the “Sep. 27, 2005” and acquires “Oct. 1,2005”. Further, the CPU 203 outputs the data of four days after aresponsibility start date thus calculated (step S3705). For example,“Oct. 1, 2005” is output to the contract date 359 of the work area 3501and makes it to the work record 3503 shown in FIG. 35.

5-3-10. Update of Record

Upon completion of the processing program, the CPU 203 adds record tothe transaction database 2093 in accordance with the data stored in thework record (step S3409). The work record 3503 shown in FIG. 35 isadded, for example.

5-3-11. Conclusion

A described in the above, it is not necessary for the present inventionto previously incorporate logic for judging setup data depending onkinds of the basic policy in the clause definition program indicatingrider. It is, therefore, rider(s) can appropriately be set up by justspecifying the referenced basic policy even when kinds of basic policyare added. In this way, a higher maintenance-ability data managementapparatus can be provided.

Although, the structure in which the processing program execution part3323 is positioned in the business program 3301 is described in FIG. 33of this embodiment, such processing program execution part 3323 may alsobe positioned any one of the programs such as the wrapper program A3303,the clause definition program 3305, the wrapper program B3307, and theclause definition program 3311. In other words, the processing programmay be executed in any program as long as the contract date as anexecution result is acquirable in the business program 3301.

6. Sixth Embodiment

Although, an example in which data items recorded on the transactiondata are specified for each product and contractual coverage for pluralcontract conditions are managed with a record format commonly used forall the products, in this embodiment, a data management system capableof arbitrarily selecting data items recorded on the transaction data foreach data to be stored and capable of expanding the versatility ofrecord formats will be described.

For example, in the case of judging cancellation of contract with aconventional data management system, cancellation of a contract isjudged with the business program by directly referencing a data itemmanaging status of cancellation provided previously in transaction data.

However, the system needs to be designed to cover all the statuses insetting up a data item on the transaction data when statuses are managedtherewith. Hence, in a field of packaging software in which statusesdiffer depending on each company is a premise thereof, a data managementmethod having a high versatility is required. Considering the abovedescribed points, a data management system capable of reducing dataredundancy and having a high versatility will be described in thisembodiment.

6-1. Functional Block Diagram

A functional block diagram of the data management apparatus 1 accordingto the present invention is the same as that shown in either of FIGS. 1and 20.

6-2. Hardware Structure

An example of hardware structure of the data management apparatus 1according to the present invention realized using a CPU is basically thesame as that shown in either of FIGS. 2 and 21.

6-3. Processing Details (1)

Processing details (1) of this embodiment will be described withreference to FIGS. 39 through 45. In this embodiment, the businessprogram is an application program for managing contractual data andproduct data of life insurance.

FIG. 39 shows a functional block diagram of the business program 3091, awrapper program 3093 and a processing status definition program 3905,and so on.

The business program 3091 comprises a main processing part 3921 forimplementing processing on user interface such as image processing and adatabase.

The wrapper program 3903 includes a processing program execution resultacquisition part 3925 for acquiring a result of implementing aprocessing program generated by the processing status definition program3905.

The processing status definition program 3905 comprises a processingprogram generation/execution part 3927 for generating a processingprogram on receipt of a request from the wrapper program 3903 andexecutes it, a processing code storage part 3928 storing processingcodes for each processing name and a pattern variable data storage part3929 for storing pattern variable data used for set up to the processingcode (when a company ID is “01”, for example). Here, the term patternvariable data is data defining combination of a pattern variable and avariable capable of setting up in the transaction data. For example, itis indicated that variables which can be combined with a patternvariable “002 (preservation section requesting special attention)” are“01(preservation error)”, “02 (preservation warning)” and “99 (specialattention no more needed).

In this embodiment, the case where a user instructs to set-up datacontent “preservation warning” in data item “preservation sectionrequesting special attention” in order to invite special attention forhandling of insurance policy data on the system by loss of an insurancepolicy will be described.

FIGS. 41 through 43 are flowchart of the business program 3091, thewrapper program 3903 and the processing status definition program 3905executed on the data management apparatus 1.

6-3-1. Acquisition of Screen-Image Data

FIG. 44 shows a screen-image of a preservation section requestingspecial attention set-up screen 440 displayed on the display 201 underthe execution of the main processing part 3921 (FIG. 39) in the businessprogram 3091. An entry field for policy number 441, display fields ofinsurance policyholder's name 443 and so on, a radio button forsetting-up “preservation error” 444, a radio button for setting-up“preservation warning” 445, a radio button for setting-up “specialattention no more needed”446 and a set-up button 447 and so on aredisplayed on this screen.

The operator of the data management apparatus 1 can instruct the set-upof preservation sections requesting special attention indicated such as“preservation error”, “preservation warning” and “special attention nomore needed” and so on for the transaction data for life insurancespecified by a predetermined policy number. For example, the operatorinputs “00001” into the entry field for policy number 441 with the keyboard/mouse 207 and makes the set-up status of insurance policyholder'sname and preservation section requesting special attention and the liketo be displayed. If none of the preservation section requesting specialattention is set in the transaction data, the radio button forsetting-up “preservation error” 444, the radio button for setting-up“preservation warning” 445 and the radio button for setting-up “specialattention no more needed”446 are all unselected.

Thereafter, the operator instructs execution of setting-up “preservationwarning” to the preservation section requesting special attention oftransaction data specified by “00001” by selecting the radio button forsetting-up “preservation warning” 445 and clicking the set-up button447.

Upon clicking the set-up button 447, the CPU 203 implementing the mainprocessing part 3921 acquires screen-image data (steps S4101, FIG. 41).For example, the CPU 203 acquires a policy number “00001”, theprocessing name “preservation sections requesting special attention setup” and the variable name preservation warning” as screen-image data.

6-3-2. Pattern Variable Set-Up Processing

The CPU 203 acquiring the screen-image executes pattern variable set-upprocessing (step S4103). The pattern variable set-up processing shown instep S4103 of FIG. 41 will be described using FIG. 42

6-3-2-1. Start-Up of Wrapper Program (Business Program)

In the business program 3091, the CPU 203 acquires the transactionrecord of insurance contracts and stores the data on a predeterminedwork record (step S4201). For example, the record whose policy number“00001” is extracted from the transaction database 2093 and acquires therecord s a work record 4001 shown in FIG. 40.

Upon acquisition of such record, the CPU 203 delivers to the wrapperprogram 3903 the acquired record, predetermined processing name andpredetermined variable name (step S4203). For example, in the abovecase, in addition to carrying out processing for set up “preservationsections requesting special attention”, pattern variable set-upprocessing for setting-up a variable corresponding to data contents“preservation warning” to be set up in conjunction with the previousprocessing is performed. Thus, the CPU 203 respectively delivers“preservation sections requesting special attention” as a processingname and “preservation warning” as a variable name to the wrapperprogram 3903.

6-3-2-2. Specification of Processing Status Definition Body (WrapperProgram)

Upon delivery, the wrapper program 3093 delivers the above-mentionedrecord, the processing name and the variable name to the processingstatus definition program 3905 specified according to a company ID inthe record (step S4221).

For example, in the work record 4001 shown in FIG. 40, the processingstatus definition program 3905 is specified according to a company ID“01”. Also, the CPU 203 respectively delivers the “preservation sectionsrequesting special attention set up” as a processing name and“preservation warning” as a variable name.

6-3-2-3. Generation of Processing Program (Processing Status DefinitionProgram)

In the processing program generation/execution part 3927 the CPU 203executing the processing status definition program 3905 acquires apattern variable corresponding to the processing name inherited byconducting a search for the pattern variable data storage part 3929(step S4241). For example, a pattern variable “002” 3929 a correspondingto the pattern variable name “preservation sections requesting specialattention” based on the processing name “preservation sectionsrequesting special attention set up” is acquired.

Subsequently the CPU 203 acquires a variable corresponding to thevariable name inherited by conducting a search for the pattern variabledata storage part 3929 (step S4243). For example, a variable “02” 3929 bcorresponding to the pattern variable name “preservation warning” in thepattern variable name “preservation sections requesting specialattention” is acquired.

The CPU 203 further acquires processing code corresponding to theprocessing name inherited by conducting a search for the processing codestorage part 3928 (step S4244). In the processing code storage part3928, processing code is recorded for each company ID. For example, theCPU executing the processing status definition program 3905 acquires aprocessing code 3928 a whose processing name “preservation sectionsrequesting special attention set up”.

The CPU 203 executing processing program generation/execution part 3927generates a processing program in accordance with the processing codeacquired from the processing code storage part 3928 and the patternvariable data obtained from the pattern variable data storage part 3929(step S4245).

FIG. 45 shows structure of a processing program thus generated. Theprocessing program 451 is a program for executing “preservation sectionsrequesting special attention set up”. Pattern variable data 453 iscombination data of a pattern variable and a variable to be set up inthe transaction data that that time. In other words, by performing suchprocessing program, a pattern variable “002” and a variable “02”corresponding to the pattern variable name “preservation sectionsrequesting special attention” and the pattern variable name“preservation warning” can be set at a predetermined position of thework record 4001.

6-3-2-4. Execution of Processing Program (Processing Status DefinitionProgram)

The CPU 203 carries out the processing program 451 thus generated (stepS4247). FIG. 43 shows a flowchart of the processing program 451 executedat that time.

In execution of the processing program 451, the CPU 203 reads in dataindicating a pattern variable and a variable from the pattern variabledata incorporated and set up in the processing program (step S4301).Further, it reads in the work record stored in the memory 205 (stepS4303). For example, the pattern variable “002” and the variable “02”are read as well as reading in the work record 4001 (FIG. 40).

The CPU 203 judges whether or not the pattern variable read from thepattern variable data exist in the work record (step S4305). Forexample, it is judged whether or not the same pattern variable isrecorded by conducting a sequential search for pattern variable 1,pattern variable 2, pattern variable 3 and so on in accordance with thepattern variable “002”.

When the same data as the pattern variable read into any patternvariable of the work record is not recorded in step S4307, the CPU 203sets up into a column of the pattern variable having the minimum columnindex which has not set up a pattern variable yet the pattern variableread in (step S4307). Here, the column index is a data item of workrecord specifying a column n indicated by “pattern n” or “variable n”and column index of “pattern variable1” or “variable 1” are respectivelyrepresented as “1”.

For example, unset-up pattern variable is indicated as “0000” in thework record 4001, the variable in that case is “00”. Hence, the CPU 203sets up the pattern variable “002” at the position of “pattern variable1” 631 in the work record 4001.

Upon set up the pattern variable, the CPU 203 further set up thevariable read in at the position of a variable column having the samecolumn index as the set-up pattern variable (step S4309).

For example, since the pattern variable “002” is set at the patternvariable 1_631, a variable “02” is set at the variable 1_632 which hasthe same column index “1” and make it like the work record 4003.

When the same data as the pattern variable read into any patternvariable of the work record is recorded in step S4305, the CPU 203 setsup the variable thus read in at the position of variable column whichhas the same column index as the pattern variable (step S4309).

In step S4249 shown in FIG. 42, the CPU 203 executing the processingstatus definition program 3905 notifies to the wrapper program 3903 aresult of execution of the step S4247 (step S4249, FIG. 42). Also, theCPU 203 performing the wrapper program 3903 in step S4223 of FIG. 42notifies to the business program 3901 a result of execution of theinherited step S4247 (step S4223, FIG. 42). For example, processing toreturn the updatable flag “1(ON)” to a program thread of the businessprogram 3091 as a return value is carried out. If an error occurs duringthe execution of the processing program. A return value “0(OFF)” isretuned.

6-3-2-5. Update of Record

In FIG. 41, upon completing execution of the pattern variable set-upprocessing (step S4103) the CPU 203 carrying out the business program3901 judges whether or not the transaction data is updatable accordingto the data recorded in the work record, in accordance with an updatableflag (step S4105). Such CPU 203 judges that it is updatable when theupdatable flag is in ON state and updates the transaction record of thetransaction database 2093 (step S4107).

Also, the CPU 203 judges that it is un-updatable when the updatable flagis in OFF state and outputs an error message indicating that no updatecan be done to the display 201 (step S4106).

6-4. Processing Details (2)

An example of setting up a pattern variable and a variable to thetransaction data is described in the processing details (1), an exampleof handling transaction data to which a pattern variable and a variableare preliminarily set up will be described in this processing details(2).

Processing details (2) of this embodiment will be described withreference to FIGS. 41 a, 42 a, 43 a, 44 a, 45 a, 39 and 40 and so on. Inthis embodiment, the business program is an application program formanaging contractual data and product data of life insurance as well.

In this embodiment, an example of checking whether or not cancellationof a contract is possible by referencing preservation sectionsrequesting special attention during execution of cancellation processingof insurance contract will be described. In other words, an example ofacquiring the name of variable in pattern variable name “preservationsection requesting special attention” in accordance with the patternvariable and the variable set up in the transaction data specified bypolicy number will be described.

FIGS. 41 a through 43 a are flowcharts of the business program 3091, thewrapper program 3903 and the processing status definition program 3905all executed by the data management apparatus 1 in the above mentionedcase.

6-4-1. Acquisition of Screen-Image Data

FIG. 44 a is a diagram showing a display screen for insurance policycancellation screen 440 a displayed on a display 201 as a result ofcarrying out the business program 3091 by the main processing part 3921(FIG. 39). In this display screen, an entry field of policy number 441a, display fields of insurance policyholder's name 443 a and so on and acancellation button 447 a and so on are displayed on this screen. Theoperator of the data management apparatus 1 can instruct execution ofcancellation processing regarding the transaction data for lifeinsurance specified by a predetermined policy number. For example, theoperator inputs “00001” into the entry field for policy number 441 awith the key board/mouse 207 and makes insurance policyholder's name andthe like to be displayed.

Thereafter, the operator acquires data being set as preservationsections requesting special attention in accordance with the patternvariable and the variable recorded in the transaction data of a policynumber “00001” by clicking the cancellation button 447 a.

Upon clicking the cancellation button 447 a, the CPU 203 implementingthe main processing part 3921 acquires screen-image data (steps S4121,FIG. 41 a). For example, the CPU 203 acquires a policy number “00001” asscreen-image data.

6-4-2. Pattern Variable Acquisition Processing

The CPU 203 acquiring the screen-image executes pattern variable set-upprocessing (step S4123). The pattern variable set-up processing shown instep S4123 of FIG. 41 a will be described using FIG. 42 a.

6-4-2-1. Start-Up of Wrapper Program (Business Program)

In the business program 3091, the CPU 203 acquires the transactionrecord of insurance contracts and stores the data on a predeterminedwork record (step S4211). For example, the record whose policy number“00001” is extracted from the transaction database 2093 and acquires therecords as a work record 4003 shown in FIG. 40.

Upon acquisition of such record, the CPU 203 delivers to the wrapperprogram 3903 the acquired record and predetermined processing name (stepS4213). For example, in the above case, pattern variable set-upprocessing for acquiring is implemented in accordance with the patternvariable and the variable stored in the transaction data. Thus, the CPU203 delivers “preservation sections requesting special attention” as aprocessing name to the wrapper program 3903.

6-4-2-2. Specification of Processing Status Definition Body (WrapperProgram A)

Upon delivery, the wrapper program 3903 delivers the record to theprocessing status definition program 3905 specified according to acompany ID in the record (step S4231).

For example, in the record 4003 shown in FIG. 40, the processing statusdefinition program 3905 is specified in accordance with a company ID 630“01”. Further, the CPU 203 delivers the “preservation sectionsrequesting special attention” as a processing name.

6-4-2-3. Generation of Processing Program (Processing Status DefinitionProgram)

The CPU 203 executing the processing status definition program 3095acquires pattern variable data related to pattern variablescorresponding to the inherited processing name by conducting a search ofthe pattern variable data storage part t 3929 (step S4251). For example,it acquires the pattern variable data related to a pattern variable“002” 3929 a corresponding to a processing name “preservation sectionsrequesting special attention acquisition” in accordance with theprocessing name “preservation sections requesting special attentionacquisition”.

Subsequently, the CPU 203 further acquires processing code correspondingto the inherited processing name by conducting a search for theprocessing code storage part 3928 (step S4254). Processing code isrecorded on the processing code storage part 3928 for each company ID.For example, the CPU 203 executing the processing status definitionprogram 3905 acquires a processing code 3928 b whose processing name is“preservation sections requesting special attention acquisition”.

The CPU 203 implementing the processing program generation/executionpart 3927 generates a processing program based on a processing codeobtained from the processing code storage part 3928 and pattern variabledata acquired from the pattern variable data storage part t 3929 (stepS4255).

FIG. 45 a shows a structural example of the processing program thusgenerated. The processing program 451 a is a processing program forexecuting the “preservation sections requesting special attentionacquisition”. In addition, pattern variable data 453 a is a combinationdata of pattern variable and variable to be acquired according to thepattern variable and the variable stored in the transaction data at thattime. In other words, by executing such processing program, it may judgewhether or not the pattern variable “preservation sections requestingspecial attention” is recorded in the work record 4003 and variable namecorresponding to the recorded variable name can be acquired, ifrecorded.

6-4-2-4. Execution of Processing Program (Processing Status DefinitionProgram)

The CPU 203 carries out the processing program 451 a thus generated(step S4257). FIG. 43 a shows a flowchart of the processing program 451a executed at that time.

In execution of the processing program 451 a, the CPU 203 reads in dataindicating a pattern variable from the pattern variable dataincorporated and set up in the processing program (step S4321). Further,it reads in the work record stored in the memory 205 (step S4323). Forexample, the pattern variable “002” is read as well as reading in thework record 4003 (FIG. 40).

The CPU 203 finds a pattern variable which is the same as that read infrom the pattern variable data and acquires a variable having the samecolumn index to the column index of the pattern variable (step S4325).

For example, it is judged whether or not the same pattern variable isrecorded by conducting a sequential search for pattern variable 1,pattern variable 2, pattern variable 3 and so on in accordance with thepattern variable “002” and such column index of such pattern variable isacquired when the same data is recorded. Since pattern variable 1 in thework record 4003 are“002”, a variable 1 “02” having column index 1 isacquired.

The CPU 203 conducts a search for the pattern variable data 453 a of theprocessing program in accordance with the variable acquired from thework record and acquires a variable name corresponding to such variabledata (step S4327). For example, when the variable 1 “02” is acquiredfrom the work record, a variable name “preservation warning”corresponding to the variable “02” is acquired from the pattern variabledata 453 a.

The CPU 203 executing the processing status definition program 3905 atstep S4259 in FIG. 42 a notifies a result of execution of the step S4257to the wrapper program 3903 (step S4259, FIG. 42 a). In step S4233 shownin FIG. 42 a, the CPU 203 performing the wrapper program 3903 notifies aresult of execution of the inherited step S4257 to the business program3901 (step S4233).

For example, processing in which the variable name “preservationwarning” acquired at step S4257 is returned to a program thread of thebusiness program 3901 as a return value is carried out. If it is judgedthat no preservation sections requesting special attention is set up inthe transaction data during the execution of the program, a return value“un-setup” is returned under exceptional processing.

6-4-2.5. Update of Record

Upon completion of the pattern variable acquisition processing (stepS4123) in FIG. 41 a, the CPU 203 executing the business program 3901judges whether or not cancellation of the transaction data can be donein accordance with the return value (step S4125).

For example, the CPU 203 starts cancellation processing as a result ofjudgment when the value is either “un-setup” or “special attention nomore needed” (step S4127).

On the other hand, when the return value is either “preservation error”or “preservation warning”, the CPU displays an error message on thedisplay 201 and terminates the processing (step S4126). Since the returnvalue is “preservation warning” and no cancellation processing can notbe done, the CPU 203 notifies the fact to the operator.

6-5. Conclusion

As described in the above, data items recorded on the transaction datafor each data to be stored can be selected arbitrarily for datamanagement in accordance with the present invention. This leads to thefact that the versatility of record formats in the transaction data canfurther be extended as well as further increasing maintenance-ability byeliminating business logics from the business program in accordance withdata characteristics. Especially, in a field of packaging software, nocustomization of business program is required, so that plurality ofcompanies can use package software by just executing customization ofrecord formats. Hence, it is possible to remarkably decrease thedevelopment cost and cost for introduction.

An example for generating a processing status definition program foreach company ID is described in the above description, the processingstatus definition program may also be generated in accordance with otherfactor(s). For example, the processing status definition program mayalso be generated in accordance with each of product code or businessgroup.

7. Seventh Embodiment

Although, an example in which data item IDs and data contents IDs arerecorded in the transaction data and acquire data item and data contentscorresponding thereto is described in the above described sixthembodiment, a data management system capable of recording data contentsinstead of the data contents IDs in the transaction data and capable ofarbitrarily setting up data items to the data contents will be describedin this embodiment.

For example, in the case of managing plural kinds of predetermined data(data on amount, data on dates so on, for example) with a conventiondata management system, it is necessary to define each data item into adatabase schema which comprises all transaction databases. However,defining all the data items considered to be required in the schemaextends its versatility but makes a data structure redundant and thiscauses a factor of reducing the use efficiency of database.

Hence, in a field of packaging software in which data items differdepending on each company is a premise thereof, a data management methodhaving a high versatility and a high efficiency in use is required. Inthis embodiment, a data management system capable of reducing dataredundancy and having a high versatility will be described in thisembodiment.

7-1. Functional Block Diagram

A functional block diagram of the data management apparatus 1 accordingto the present invention is the same as that shown in either of FIGS. 1and 20.

7-2. Hardware Structure

An example of hardware structure of the data management apparatus 1according to the present invention realized using a CPU is basically thesame as that shown in either of FIGS. 2 and 21.

7-3. Processing Details (1)

Processing details of this embodiment will be described with referenceto FIGS. 46 through 52. In this embodiment, the business program is anapplication program for managing contractual data and product data oflife insurance.

FIG. 46 shows a functional block diagram of a business program 4601, awrapper program 4603 and a data item definition program 4605, and so on.

The business program 4601 comprises a main processing part 4621 forimplementing processing on user interface such as image processing and adatabase.

The wrapper program 4603 includes a processing program execution resultacquisition part 4625 for acquiring a result of implementing aprocessing program generated by the data item definition program 4605.

The processing status definition program 4605 comprises a processingprogram generation/execution part 4627 for generating a processingprogram on receipt of a request from the wrapper program 4603 andexecutes it, a processing code storage part 4628 storing processingcodes for each processing name and a pattern variable data storage part4629 for storing pattern variable data used for set up to the processingcode (when a company ID is “01”, for example). Here, the term patternvariable data is data for defining data item in the transaction datausing pattern variable and pattern variable name corresponding thereto.For example, data item corresponding to the pattern variable “002” isdefined in accordance with a pattern variable name “rate referencedate”.

In this embodiment, the case where a user instructs to carry outcalculation of a cash surrender value of insurance contract will bedescribed. FIGS. 48 through 50 are flowcharts of the business program4601, the wrapper program 4603 and the data item definition program,4605 executed by the data management apparatus 1.

7-3-1. Acquisition of Screen-Image Data

FIG. 51 shows a screen-image of cash surrender value calculation screen510 displayed on the display 201 under the execution of the mainprocessing part 4621 (FIG. 46) in the business program 4601. An entryfield for policy number 511, the entry field for insurancepolicyholder's name 513 so on, display field for cash surrender value515 and a calculation button 517 are displayed on this screen.

The operator of the data management apparatus 1 inputs a predeterminedpolicy number for calculation of cash surrender value in the entry field511 and clicks the calculation button 517 for an instruction to displaythe calculation result of the cash surrender value on the display. Forexample, the operator inputs “00001” into the entry field for policynumber 511 with the key board/mouse 207 and makes insurancepolicyholder's name and the like to be displayed.

Thereafter, the operator instructs execution of calculation of cashsurrender value specified by policy number “00001” by clicking thecalculation button 517.

Upon clicking the calculation button 517, the CPU 203 executing the mainprocessing part 4621 acquires screen-image data (step S4801, FIG. 48).For example, such CPU 203 acquires a policy number “00001” asscreen-image data.

7-3-2. Pattern Variable Name Acquisition Processing

The CPU 203 acquiring the screen-image executes pattern variable nameacquisition processing (step S4803). The pattern variable nameacquisition processing shown in step S4803 of FIG. 48 will be describedusing FIG. 49

7-3-2-1. Start-Up of Wrapper Program (Business Program)

In the business program 4601, the CPU 203 acquires the transactionrecord of insurance contracts and stores the data on a predeterminedwork record (step S4901). For example, the record whose policy number“00001” is extracted from the transaction database 2093 and acquires therecords as a work record 4701 shown in FIG. 47.

Upon acquisition of such record, the CPU 203 delivers to the wrapperprogram 4603 the acquired record and predetermined processing name (stepS4903). For example, in the above case, pattern variable nameacquisition processing for specifying data such as “rate reference date”and “accumulated amount” used for cash surrender value calculationprocessing is implemented in accordance with the pattern variable andthe data stored in the transaction data. Thus, the CPU 203 respectivelydelivers to the wrapper program 4603 “rate reference date acquisition”and “accumulated amount acquisition” as processing name.

7-3-2-2. Specification of Data Item Definition Body (Wrapper Program)

Upon delivery, the wrapper program 4603 delivers the record to the dataitem definition program 4605 specified according to a company ID in therecord (step S4921).

For example, in the record 4701 shown in FIG. 47, the data itemdefinition program 4605 is specified in accordance with a company ID 630“01”. Further, the CPU 203 delivers the “rate reference dateacquisition” and “accumulated amount acquisition” as processing name.

7-3-2-3. Generation of Processing Program (Data Item Definition Program)

In a processing program generation/execution part 4627, the CPU 203executing the data item definition program 4605 acquires patternvariable data related to pattern variables corresponding to theinherited processing name by conducting a search of the pattern variabledata storage part 4629 (step S4941). For example, it acquires a patternvariable “002” 4629 a corresponding to the pattern processing name “ratereference date” according to the processing name “rate reference dateacquisition” and a pattern variable “010” 4629 b corresponding to thepattern processing name “accumulated amount” according to the processingname “accumulated amount acquisition”.

Subsequently, the CPU 203 further acquires processing code correspondingto the inherited processing name by conducting a search for theprocessing code storage part 4628 (step S4943). Processing code isrecorded on the processing code storage part 4628 for each company ID.For example, the CPU 203 executing the data items definition program4605 acquires a processing code 4628 b whose processing name is “ratereference date acquisition” and a processing code 4628 a whoseprocessing name is “accumulated amount acquisition”.

The CPU 203 implementing the processing program generation/executionpart 4627 generates a processing program based on a processing codeobtained from the processing code storage part 4628 and pattern variabledata acquired from the pattern variable data storage part 4629 (stepS4945).

FIG. 52 shows a structural example of the processing program thusgenerated. The processing program 521 includes a processing program forexecuting processing “rate reference date acquisition” and the“accumulated amount acquisition”. In addition, pattern variable data 523and 525 are combination data of pattern variable and variable name to beacquired according to the pattern variable stored in the transactiondata at that time. In other words, by executing such processing program,it may judge whether or not the pattern variable names “rate referencedate” and the “accumulated amount” are recorded in the work record 4701and data itself corresponding to the recorded variable name can beacquired, if recorded.

7-3-2-4. Execution of Processing Program (Data Item Definition Program)

The CPU 203 carries out the processing program 521 thus generated (stepS4947). FIG. 50 shows a flowchart of the processing program 521 executedat that time.

In execution of the processing program 521, the CPU 203 reads in dataindicating a pattern variable from the pattern variable dataincorporated and set up in the processing program (step S5021). Further,it reads in the work record stored in the memory 205 (step S5023). Forexample, the pattern variable 1 “002” is read as well as reading in thework record 4701 (FIG. 47).

The CPU 203 finds a pattern variable which is the same as that read infrom the pattern variable data and acquires a column index of thepattern variable (step S5025). For example, in execution of a processingprogram related to “rate reference date acquisition”, it is judgedwhether or not the same pattern variable is recorded by conducting asequential search for pattern variable 1, pattern variable 2, patternvariable 3 and so on in accordance with the pattern variable “002” andsuch column index of such pattern variable is acquired when the samedata is recorded. Because pattern variable 1 in the work record 4701is“002”, column index “1” is acquired.

Further, the CPU 203 acquires data having the acquired column index fromthe work record (step S5027). For example, data 1 “2005/09/01” havingthe column index 1 is acquired.

Similarly, in execution of a processing program related to “ratereference date acquisition”, it is judged whether or not the samepattern variable is recorded by conducting a sequential search forpattern variable 1, pattern variable 2, pattern variable 3 and so on inaccordance with the pattern variable “010” and such column index of suchpattern variable is acquired when the same data is recorded. Becausepattern variable 2 in the work record 4701 is“010”, column index “2” isacquired. In addition, the CPU 203 acquires data 2 “¥100,000” havingcolumn 2.

The CPU 203 executing the data item definition program 4605 at stepS4949 in FIG. 49 notifies a result of execution of the step S4947 to thewrapper program 4603 (step S4949). In step S4923 shown in FIG. 49, theCPU 203 performing the wrapper program 4603 notifies a result ofexecution of the inherited step S4947 to the business program 4601 (stepS4923).

For example, processing in which the data 1 “2005/09/01” acquired atstep S4947 and the data 2 “¥100,000” are respectively returned as the“rate reference data” and the “accumulated amount” to a program threadof the business program 4601 is carried out. If it is judged that nopattern variable is set up in the transaction data during the executionof the processing program, a return value “un-setup” is returned underexceptional processing.

7-3-2-5. Calculation of Cash Surrender Value of Insurance Contract

Upon completion of the pattern variable acquisition processing (stepS4803) in FIG. 48, the CPU 203 executing the business program 4601judges whether or not data needed for the calculation of cash surrendervalue of insurance contract is acquired in accordance with the returnvalue (step S4805). Whenever such data is acquired calculation of cashsurrender value of insurance contract starts in accordance with the data(step S4807).

For example, once the CPU 203 acquires data related to “rate referencedate” and “accumulated amount” as a return values, the CPU 203calculates a cash surrender value of insurance contract according to thepolicy number “00001” in accordance with the above data 1 “2005/09/01”and the above data 2 “¥100,000” and displays the calculation result onthe display field for cash surrender value 515 of the screen-image ofcash surrender value calculation screen 510 (FIG. 51).

On the other hand, if the return value is “un-setup”, the CPU 203displays an error message on the display 201 and terminates theprocessing as a result of judgment that cancellation processing can notbe done (step S4806). In this case, since calculation processing of thecash surrender value can not be executed, such fact is notified to theoperator and terminates the process.

7-4. Others

Although, en example of using data format on date (rate reference date)recorded on the transaction data and data format on amount (accumulatedamount) in the above, the present may applicable to data with other dataformat(s) and other data. For example, a text format data and binaryformat data may also be used. In FIG. 47, data 3 in text format such as“Chuou-ku, Osaka-city and so on” is stored therein and data item of suchdata 3 is handled as “address” according to pattern variable 3 “100”.

7-5. Conclusion

As described in the above, data items recorded on the transaction datafor each data to be stored can be selected arbitrarily for datamanagement in accordance with the present invention. This leads to thefact that a data management apparatus capable of reducing redundancy ofthe data format in the transaction data as well as having a highversatility and a high maintenance-ability can be provided.

The present invention may further increase maintenance-ability byeliminating business logics from the business program in accordance withdata characteristics. Especially, in a field of packaging software, nocustomization of business program is required, so that plurality ofcompanies can use package software by just executing customization ofrecord formats. Hence, it is possible to remarkably decrease thedevelopment cost and cost for introduction.

An example for generating a data item definition program for eachcompany ID is described in the above description, the data itemdefinition program may also be generated in accordance with otherfactor(s). For example, the data item definition program may also begenerated in accordance with each of product code or business group.

In addition, column index of pattern variable can be set for each dataformat. In this way, one of processing speed and processing efficiencycan be increased as a result of grouping data items having the same dataformats and that of the schema design.

8. Eighth Embodiment

Although, an example in which a data contents ID corresponding to apredetermined data contents of a predetermined data item is set up inthe transaction data is described in the above described embodiment,another example in which data contents is acquired in accordance withthe data contents ID stored in the transaction data and a predeterminedprocessing is executed in accordance with the acquired data contentswill be described in this embodiment.

For example, in the data management system shown in the conventional art(1), when the withholding tax amount at the time of cancellation of aninsurance product is calculated, it is necessary to at least judgewhether or not the insurance contract represented by the transactiondata is “predetermined annuity insurance” and insurance class of suchannuity is “annuity certain”, if it is “predetermined annuity”.

However, when the structure to which the above described the judgmentlogic is incorporated in each business program is adopted, it will benecessary to correct the judgment logic and operation check of thesystem for the correction is needed, if the kind of insurance classwhich is subject to the calculation is added. Hence, the maintenancecost to the system change will be enormous. Especially in packagesoftware industry in which insurance products and functionalrequirements differ depending on each company is a premise thereof, theadoption of a versatility data management technique capable ofsuppressing not only the maintenance cost at the time of employment butalso the customize cost at the time of its introduction is desired.

In this embodiment, considering such disadvantages, a data managementsystem capable of maintaining versatility and applicability undersuppressing the influence range of correction to the judgment logic asminimum even when data having different data characteristics is handledwill be described.

8-1. Functional Block Diagram

The functional block diagram of the data management apparatus 1according to the present invention is the same as that show in FIGS. 1and 20.

8-2. Hardware Structure

A hardware structure of a computer device with a CPU which realizes thedata management apparatus 1 according to the present invention isbasically the same as that shown in FIGS. 2 and 21.

8-3. Processing Details (1)

Processing details of this embodiment will be described with referenceto FIGS. 53 through 59. In this embodiment, the business program is anapplication program for managing contractual data and product data.

FIG. 53 shows a functional block diagram of the business program 5301, awrapper program 5303, a clause definition program 5305 so on and a workregion 5307.

The business program 5301 comprises a main processing part 5321 forimplementing processing on user interface such as image processing andat least a pair of a database an I/F edit class 5323 as a condition setup part for setting up conditions of calculation for a predeterminedcalculation process and a calculation model 5325 as a calculationprocessing part for implementing a predetermined calculation process inaccordance with the calculation conditions. A combination of the I/Fedit class and the calculation model is made of each of the processingsuch as withholding tax amount calculation processing, calculationprocessing for converting into yen, calculation processing for defaultinterest and payment amount calculation processing and so on.

The wrapper program 5303 comprises a requires the clause definitionprogram a processing program generation/execution part 5327 requesting aprocessing program to the clause definition program 5305 andimplementing such program.

The clause definition program 5305 comprises a processing programgeneration part 5329 for generating a processing program on receipt of arequest from the wrapper program 5303, a processing code storage part5331 storing processing code for each processing name and a combinationdata storage part 5333 recording combination data used for setting upthe processing code (in the case that clause ID is “55555” for example).

The work region 5307 is a data storage object containing all the datahaving possibilities of handled by each program including work record5351 for storing the transaction data, a screen-image input data 5353for recording data input or displayed on the user interface screen and acalculation result data 5355 for storing data output by each program.

In this embodiment, withholding tax amount calculation processingimplemented simultaneous with the calculation of cash surrender valueamount of a insurance product relating to annuity will be described.

FIGS. 54 through 57 are flowcharts of the business program 5301, thewrapper program 5303, the clause definition program 5305 executed by thedata management apparatus 1.

8-3-1. Acquisition of Screen-Image

FIG. 59 shows a screen-image for calculating a cash surrender valueamount 570 displayed on the display 201 under the execution of the mainprocessing part 5321 (FIG. 53) in the business program 5301. A displayfield for date 578, an entry field for policy number 571, display fieldsfor insurance policyholder's name 573, a display field of cash surrendervalue amount 574, a display field for paid insurance premiums 575, adisplay field for withholding tax amount 576 and a calculation button577 and so on are displayed on this screen.

The operator of the data management apparatus 1 can instruct calculationof the cash surrender value amount, the paid insurance premiums and thewithholding tax amount for the transaction data according to a lifeinsurance contract specified by a predetermined policy number. Forexample, the operator inputs “00001” into the entry field for policynumber 571 for displaying the insurance policyholder's name and so on.

Thereafter, the operator instructs execution of calculating the cashsurrender value amount, the paid insurance premiums and the withholdingtax amount of the transaction data for the policy number “00001” byclicking the calculation button 577.

Upon clicking the calculation button 577, the CPU 203 executing the mainprocessing part 3321 acquires screen-image input data 5353 (step S5401,FIG. 54). As described in the above, all the data displayed on the cashsurrender value calculation screen 570 are recorded in the screen-imagedata 5353 of the work region 5307.

FIG. 58 shows a structural example of the work region 5307. The workrecord 5351 comprises a policy number 5811, a clause ID 5813, a variable1_5815 and so on. The screen-image input data 5353 includes a policynumber 5821, cancellation date 5823 and so on. Cancellation result data5255 comprises paid insurance premiums 5833, a withholding tax amount5839 and so on.

For example, the CPU 203 acquires from a record 5801 of the work regionshown in FIG. 58 “00001” of a policy number 5821 and “Oct. 1, 2005” ofcancellation date 5823. The “Oct. 1, 2005” of cancellation date 5823 isdata obtained from the display field for date 578 of the cash surrendervalue calculation screen 570.

8-3-2. Cash Surrender Value Amount Calculation and Paid InsurancePremiums Calculation Processing

The CPU 203 acquiring the screen-image input data performs the cashsurrender value amount calculation processing and the paid insurancepremiums calculation processing (steps S5403 through S5405). The CPU 203stores the cash surrender value amount acquired through the cashsurrender value amount calculation processing in the calculation resultdata 5355 of the work region 5307. For example, an amount “¥100,000” isrecorded in the cash surrender value amount 5831 in the record 5801shown in FIG. 58.

Also, the CPU 203 stores the paid insurance premiums acquired throughthe paid insurance premiums calculation processing in the calculationresult data 5355 of the work region 5307. For example, an amount“¥80,000” is recorded in the paid insurance premiums 5833 in the record5801 shown in FIG. 58.

8-3-3. Withholding Tax Amount Calculation Processing

Upon completion of the cash surrender value amount calculationprocessing and the paid insurance premiums calculation processing, theCPU 203 executing the business program carries out the withholding taxamount calculation processing (step S5407). This processing is carriedout by sequentially executing a withholding tax amount calculationprocessing (I/F edit class) and another withholding tax amountcalculation processing (calculation model) (FIG. 55, step S5421 throughS5425).

8-3-3-1. Withholding Tax Amount Calculation Processing (I/F Edit Class)

FIG. 56 shows a flowchart of the withholding tax amount calculationprocessing (I/F edit class).

8-3-2-1-1. Set-Up to Work Region

The CPU 203 reads in the cash surrender value amount 5831 from thecalculation result data 5355 of the work region 5307 and set it up to atotal income amount 5835 of input data in a work region 5891 for model(step S5501, FIG. 56). For example, as shown in the record 5803 of FIG.58, “¥100,000” of the cash surrender value amount 5831 is set into“¥100,000” of the total income amount 5835.

The CPU 203 reads in the paid insurance premiums 5833 from thecalculation result data 5355 of the work region 5307 and set it up to alegitimate expense 5837 in the work region 5891 for model (step S5503).For example, as shown in the record 5803 of FIG. 58, “¥80,000” of thepaid insurance premiums 5833 is set into “¥80,000” of the legitimateexpense 5837.

8-3-3-1-2. Start-Up of Wrapper Program (Business Program)

The CPU 203 acquires the transaction record related to the insurancecontract by reading the work record 5351 of the work region 5307 andjudges whether or not conditions such as the insurance contract is“lump-sum payment” and “cancelled within five years from the contractdate” (steps S5505 through S5507). The CPU 203 performing the I/F editclass 5323 delivers the clause ID recorded in the work region 5307 and apredetermined processing name to the wrapper program 5303 (step S5509).For example, in order to calculate a withholding tax amount which arisesduring the calculation of the cash surrender value amount calculationprocessing, the CPU 203 delivers the processing name “annuity classacquisition” set up at the I/F edit class 5323 together with “55555” ofthe clause ID 5813 of the work region 5307 in the above example.

8-3-3-1-3. Wrapper Program

In the processing program generation/execution part 5327, the CPUexecuting the wrapper program 5303 specifies the clause definitionprogram 5305 in accordance with the clause ID inherited from thebusiness program 5301 and delivers the processing name by accessing thespecified clause definition program 5305 (step S5521).

8-3-3-1-4. Clause Definition Program

On receipt of delivery, the CPU 203 carries out the processing programgeneration part 5329 of the clause definition program 5305 and acquiresa processing code corresponding to the inherited processing name as wellas acquiring combination data of contractual coverage and contractualcoverage ID corresponding to the inherited processing name from thecombination data storage part 5333. Further the CPU 203 executing theclause definition program 5305 generates a processing program inaccordance with the acquired processing code and the combination dataand delivers the processing program thus generated to the wrapperprogram 5303 (step S5541). The processing at step S5541 is the same asthat of steps 2541 through S2547 of contractual coverage acquisitionprocessing shown in FIG. 25.

8-3-3-1-5. Execution of Processing Program (Wrapper Program)

In the wrapper program 5303, the CPU 203 implements the processingprogram inherited from the clause definition program 2096 (step S5523).The flowchart of the processing program executed at that time is thesame as that shown in FIG. 26. By execution of such processing program,the CPU 203 acquires contractual coverage corresponding to thecontractual ID input via the work region 5307. For example, it acquirescontractual coverage “annuity certain” corresponding to contractualcoverage ID “01” from the combination data of processing program shownin FIG. 30.

Subsequently, the CPU 203 executing the wrapper program 5503 notifies aresult of execution to the business program 5301 (step S5525, FIG. 55).For example, processing to return the “annuity class=annuity certain” toa program thread according to the I/F edit class 5323 of the businessprogram 5301 as a return value is carried out. In this way, it isrecognized that the “annuity class” for this insurance contract is“annuity certain”.

8-3-3-1-6. Set Up of Taxation Withholding Tax Flag (I/F Edit Class)

Upon receipt of notification from the wrapper program 5303, the CPU 203performing the I/F edit class 5323 judges whether or not the annuityclass is an annuity certain (step S5511). It sets a taxation withholdingtax flag 5841 in the work region 5891 for model to be ON-state when the“annuity class=annuity certain” is retuned as a return value asdescribed in the above (step S5513).

The taxation withholding tax flag 5841 is set under OFF-state when theannuity class is other that annuity certain such as “annuity for life”.

8-3-3-2. Processing of Withholding Tax Amount Calculation (CalculationModel)

Upon completion of the cash surrender value calculation processing (I/Fedit class), the CPU 203 performing the business program carries outwithholding tax amount calculation processing (calculation model) (FIG.55, step S5423). In FIG. 57, the CPU 203 reads in the taxationwithholding tax flag 5841 from the work region 5891 for model, judgeswhether or not the taxation withholding tax flag is ON-state. It furtherreads in the total income amount and the legitimate expense from thework region 5307 when the flag is in ON-state (step S5600 throughS5603). For example, the total income amount 5835 “¥100,000” and thelegitimate expense 5837 “¥80,000” shown in FIG. 58 are read in.

Once the total income amount and the legitimate expense are read in, theCPU 203 calculates a withholding tax amount based on a predeterminedcalculation formula (step S5605). For example, a tax amount to the cashsurrender value that is a taxation object of withholding tax iscalculated based on a calculation formula “withholding tax amount=(totalincome−legitimate expense)×0.2”.

The CPU 203 outputs the withholding tax amount thus calculated to awithholding tax amount 5843 of output data in the work region 5891 formodel (step S5607). For example, the calculated withholding tax amount“¥4,000” as show in the record 5803 of FIG. 58 is stored in thewithholding tax amount.

When the taxation withholding tax flag 5841 is set under OFF-state instep S5601, the above step is eliminated and ends the processing.

8-3-3-3. Output of Withholding Tax Amount

By sequentially implementing the withholding tax amount calculationprocessing (I/F edit class) and the withholding tax amount calculationprocessing (calculation model), the CPU 203 outputs to the withholdingtax amount 5839 of the calculation result data 5355 in the work region5307 the withholding tax amount 5843 being output to the work region5891 for model (step S5425). For example, the withholding tax amount5843 “¥4,000” read in from the record 5803 is stored in the withholdingtax amount 5839 as shown in the record 5801 of FIG. 58.

8-3-4. Display of Screen-Image (Business Program)

The CPU 203 executing the main processing part 5321 of the businessprogram 5301 displays on the cash surrender value calculation screen 570the cash surrender value amount, the paid insurance premiums and thewithholding tax amount stored in the work region 5307 (step S5411). Forexample, the cash surrender value amount 5831 “¥100,000”, the paidinsurance premiums 5833 “¥80,000” and the withholding tax amount 5839“¥4,000” on the record 5801 shown in FIG. 58 are displayed respectivelyon the cash surrender value amount display field 574, the paid insurancepremiums display field 575 and the withholding tax amount display field576 on the screen 570 shown in FIG. 59.

8-3-5. Conclusion

A described in the above, it is unnecessary to judge insurance productsat the main processing part side of the business application byacquiring desired contractual coverage(s) relating to desired clauseID(s) as a result of accessing the clause definition program 5305 in theI/F edit class 5323. In this way, usability and versatility of thesystem without receiving influence in the difference in the contractterms of the products. In other words, it is possible to continuouslyuse the system without any adjustment in the judgment logic even whennew insurance product(s) is added, so that the cost in maintenance andthat in customization may be suppressed.

8-2. Processing Details (2)

In the processing details (1) above-described, it constitutes so thatstructural processing may be performed for one calculation processingusing the “I/F edit class” performing set up of condition(s) and the“calculation model” implementing calculation processing. Consequently,the “calculation model” may be configured solely by a universalequation. For example, in the above processing details, the calculationformula “withholding tax amount=(total income−legitimate expense)×0.2”is used as a “calculation model” of withholding tax amount. Suchcalculation formula is defined by Act of Parliament and the like, andcommonly used for any companies.

In the processing details (2), an example of common use of the I/F editclass and the calculation model represented by the withholding taxamount calculation processing carried out among different businessapplications will be described. For example, in the insurance industry,there exists a process so called “deduction” that is treated as only apartial cancellation of insurance by withdrawing a part of accumulatedamount before the start date of payment. Cash surrender value alsoarises in the case of such “deduction”, so that a withholding taxcalculation is carried out. An example of executing a businessapplication for processing of deduction will be described herein below.

Details of the processing will described with further reference to FIGS.54 a and 59 a. In this embodiment, the business program is also abusiness program for managing contract data and product data of lifeinsurance. FIG. 54 a is an example of flowchart of the business program5301 for the above-mentioned deduction.

8-4-1. Acquisition of Screen-Image Data

FIG. 59 a shows a screen image for calculating a cash surrender valueamount for deduction 590 displayed on the display 201 as a result ofexecution of the main processing part 5321 in the business program 5301.An display field for date 598, an entry field of policy number 591, adisplay field of insurance policyholder's name 593 and display fields ofaccumulated amount after deduction 598, a display field for cashsurrender value amount for deduction 594, a display field for paidinsurance premiums for deduction 595, a display field for withholdingtax amount 596 and calculation button 597 and so on are displayed onthis screen.

The operator of the data management apparatus 1 can instruct calculationof the cash surrender value amount, the paid insurance premiums and thewithholding tax amount for the transaction data according to a lifeinsurance contract specified by a predetermined policy number. Forexample, the operator inputs “00001” into the entry field for policynumber 591 for displaying the insurance policyholder's name and so on.

Thereafter, the operator the operator instructs execution of calculatingcash surrender value amount for deduction, paid insurance premiums fordeduction and withholding tax amount for the transaction data specifiedby the policy number “00001” by clicking the calculation button 597.

Upon clicking the calculation button 597, the CPU 203 executing the mainprocessing part 5321 acquires screen-image input data 5353 (step S5401,FIG. 54 a). As described in the above, all the data displayed on thescreen 590 is acquired in the screen-image input data 5353 of the dataregion 5307.

FIG. 58 shows a structural example of the work region 5307. The workrecord 5351 comprises the policy number 5811, the clause ID 5813, andthe variable 1_5815 and so on. The screen-image input data 5353 includesthe policy number 5821, the cancellation date 5823 and son on. Thecalculation result data 5355 comprises the cash surrender value amount5831, the paid insurance premiums 5833 and the withholding tax amount5839 and so on.

For example, the CPU 203 acquires from the record 5801 of the workregion shown in FIG. 58 “00001” of a policy number 5821 and “Oct. 1,2005” of cancellation date 5823. The “Oct. 1, 2005” of the cancellationdate 5823 is data obtained from the display field 598 of the screen 590.

8-4-2. Cash Surrender Value Amount Calculation and Paid InsurancePremiums Calculation Processing

The CPU 203 acquiring the screen-image input data performs the cashsurrender value amount calculation processing for deduction and the paidinsurance premiums calculation processing for deduction in accordancewith the accumulated amount after deduction input in the display field598 (steps S5404 through S5406). The CPU 203 stores the cash surrendervalue amount for deduction acquired through the cash surrender valueamount for deduction calculation processing in the calculation resultdata 5355 of the work region 5307. For example, an amount “¥100,000” isrecorded in the cash surrender value amount 5831 in the record 5801shown in FIG. 58.

Also, the CPU 203 stores the paid insurance premiums for deductionacquired through the paid insurance premiums for deduction calculationprocessing in the calculation result data 5355 of the work region 5307.For example, an amount “¥80,000” is recorded in the paid insurancepremiums 5833 in the record 5801 shown in FIG. 58.

8-4-3. Withholding Tax Amount Calculation Processing

Upon completion of the cash surrender value amount calculationprocessing and the paid insurance premiums calculation processing, theCPU 203 executing the business program carries out the withholding taxamount calculation processing (step S5407, FIG. 54 a). This processingis carried out by sequentially executing the withholding tax amountcalculation processing (I/F edit class) and another withholding taxamount calculation processing (calculation model) (FIG. 55, step S5421through S5425). Here, the flowchart of the withholding tax calculationprocessing including both of the withholding tax amount calculationprocessing (I/F edit class) and another withholding tax amountcalculation processing (calculation model) are the same as thatdescribed in the processing details (1) shown in FIGS. 55 through 57.

8-4-4. Screen Display (Business Program)

The CPU 203 executing the main processing part 5321 of the businessprogram 5301 displays on the screen 590 the cash surrender value amount,the paid insurance premiums and the withholding tax amount stored in thework region 5307 (step S5411). For example, the cash surrender valueamount 5831 “¥100,000”, the paid insurance premiums 5833 “¥80,000” andthe withholding tax amount 5839 “¥4,000” shown in FIG. 58 are displayedrespectively on the display field for cash surrender value amount fordeduction 594, the display field for paid insurance premiums fordeduction 595 and the display field for withholding tax amount 596 shownin FIG. 59A.

8-4-5. Conclusion

A described in the above, processing itself is totally different fromeach other in ordinary cancellation processing and the above-mentioneddeduction processing, but calculation processing between thecancellation processing and the deduction processing can be commonlyused by utilizing the calculation result data in the work region whichis considered as the data storage object used in common with eachprocessing. In other words, the I/F edit class and the calculation modelrepresenting the above-mentioned withholding tax amount calculation cancommonly be used between different business applications.

In this way, it is unnecessary to judge insurance products at the mainprocessing part side of the business application and capable ofattaining common use of functional parts of processing. Consequently, adata management system capable of suppressing a range of the influenceof adjustment minimum as well as maintaining usability and versatilityof the system even when adjustment not only to difference in productfeatures but also to difference in functional requirements can beprovided.

8-5. Processing Details (3)

In the above-described processing details (2), both the usability andversatility are maintained by adjustment of the difference in functionalrequirements of the business applications by setting input/output dataof the I/F edit class and the calculation model at the same area of workregion considered as the data storage object while the system isconfigured so that structural processing may be performed for onecalculation processing using the “I/F edit class” for setting upcondition(s) and the “calculation model” for executing calculationprocessing.

In the processing details (3) described hereunder, a data managementcapable of increasing usability and versatility by employing a structurethat adjusts the difference in functional requirements of the businessapplications even in the I/F edit class.

The processing details according to this embodiment will be describedwith further reference to FIGS. 54 b, 56 a, 58 a and 60 through 63. Inthis embodiment, the business program is an application program formanaging contractual data and product data of life insurance.

FIG. 54 b is an example flowchart of the business program 5301 forhandling “foreign currency annuity insurance”. Such “foreign currencyannuity insurance” is a foreign-currency-denominated individual annuityinsurance and the like in which funds are managed with U.S. Treasurybonds and so on. The cash surrender value amount and the paid insurancepremiums are calculated in a foreign currency, but the withholding taxis calculated in yen based on the cash surrender value amount and thepaid insurance premiums after conversion into yen.

8-5-1. Acquisition of Screen-Image Data

FIG. 60 shows a screen-image for calculating a foreign currency annuitycash surrender value amount 600 displayed on the display 201 under theexecution of the main processing part 5321 (FIG. 53) in the businessprogram 5301. A display field for date 608, an input field of policynumber 601, display fields of insurance policyholder's name 603, adisplay field for cash surrender value amount 604, a display field forpaid insurance premiums 605, a display field for withholding tax 606 anda calculation button 607 and the like are displayed on this screen.

The operator of the data management apparatus 1 can instruct executionof calculation a foreign-currency-denominated cash surrender valueamount, a foreign-currency-denominated paid insurance premiums and a yenbased withholding tax amount for the transaction data of the lifeinsurance contract specified by a predetermined policy number. Forexample, the operator inputs “00001” into the entry field for policynumber 601 with the key board/mouse 207 and makes insurancepolicyholder's name and the like to be displayed.

Thereafter, the operator instructs execution of calculating of the cashsurrender value amount, the paid insurance premiums and the withholdingtax amount for the transaction data specified by policy number “00001”by clicking the calculation button 607.

Upon clicking the calculation button 607, the CPU 203 executing the mainprocessing part 5321 acquires screen-image input data 5353 (step S5401,FIG. 54 b). As described in the above, all the data displayed on thescreen 600 is acquired in the screen-image input data 5353 of the dataregion 5307.

FIG. 58 a shows a structural example of the work region 5307. The workrecord 5351 comprises the policy number 5811, the cancellation date 5813and the variable 1_5815 and so on. The screen-image input data 5353includes the policy number 5821, the cancellation date 5823 and son on.The calculation result data 5355 comprises the cash surrender valueamount 5831, the cash surrender value amount (yen equivalent amount)5832, the paid insurance premiums 5833, the paid insurance premiums (yenequivalent amount) 5834 and the withholding tax amount 5839 and so on.

For example, the CPU 203 acquires from the record 5805 of the workregion shown in FIG. 58 a “00001” of a policy number 5821 and “Oct. 1,2005” of cancellation date 5823. The “Oct. 1, 2005” of the cancellationdate 5823 is data obtained from the display field 608 of the screen 600.

8-5-2. Cash Surrender Value Amount Calculation and Paid InsurancePremiums Calculation Processing

The CPU 203 acquiring the screen-image input data performs the cashsurrender value amount calculation processing and the paid insurancepremiums calculation processing (steps S5403 through S5405, FIG. 54 b).The CPU 203 stores the cash surrender value amount acquired through thecash surrender value amount calculation processing in the calculationresult data 5355 of the work region 5307. For example, an amount “$904”is recorded in the cash surrender value amount 5831 in the record 5805shown in FIG. 58 a.

Also, the CPU 203 stores the paid insurance premiums acquired throughthe paid insurance premiums calculation processing in the calculationresult data 5355 of the work region 5307. For example, an amount “$723”is recorded in the paid insurance premiums 5833 in the record 5805 shownin FIG. 58 a.

Hence, in the case of foreign currency annuity managed with U.S dollars($), both the cash surrender value amount and the paid insurancepremiums are calculated in U.S dollars ($).

8-5-3. Yen Converting Calculation Processing

Upon completion of the cash surrender value amount calculationprocessing and the paid insurance premiums calculation processing, theCPU 203 executing the business program carries out a yen convertingcalculation processing (step S5408, FIG. 54 b). This processing iscarried out by sequentially executing the yen converting calculationprocessing (I/F edit class) and another yen converting calculationprocessing (calculation model) (FIG. 61, step S6101 through S6105).These processing are calculation processing for converting theforeign-currency-denominated cash surrender value amount and the paidinsurance premiums into yen calculated in the above.

8-5-3-1. Yen Converting Calculation Processing (I/F Edit Class)

FIG. 62 shows a flowchart of the yen converting calculation processing(I/F edit class).

Start-Up of Wrapper Program (Business Program)

The CPU 203 performing the yen converting calculation processingacquires the transaction data related to the insurance contract byreading the work record 5351 of the work region 5307 and delivers to thewrapper program 5303 a clause ID and a predetermined processing name(step S6201). For example, in order to judge by which currency theannuity is managed for executing the yen converting processing, the CPU203 delivers the processing name “agreement currency” set up at the I/Fedit class of the yen converting calculation processing together with“55555” of the clause ID 5813 in the work region 5307.

8-5-3-1-2. Wrapper Program

In a processing program requesting/executing part 5327, the CPU 203executing the wrapper program 5303 specifies the clause definitionprogram 5305 in accordance with the clause ID inherited from thebusiness program 5301 and delivers to the clause definition program 5305the processing name by accessing thereto (step S6221).

8-5-3-1-3. Clause Definition Program

Upon delivery, the CPU 203 acquires from the processing code storagepart 5331 the processing code corresponding to the inherited processingname by carrying out the processing program generation part 5329 of theclause definition program 5305 and further acquires from the combinationdata storage part 5333 combination data of the contractual coverage andthe contractual coverage ID corresponding to the inherited processingname. The CPU 203 executing the clause definition program 5305 generatesa processing program in accordance with the acquired program and thecombination data and delivers the generated program to the wrapperprogram 5303 (step S6241). The processing in step S6241 is basically thesame as that executed in steps S2541 through S2547 of the flowchart ofthe contractual coverage acquisition processing shown in FIG. 25, butsuch steps are different from the step S6241 in that a predeterminedagreement currency(ies) is recorded as a contractual coverage.

8-5-3-1. Execution of Processing Program

In the wrapper program 5303, the CPU 203 carries out the processingprogram inherited from the clause definition program 2096 (step S6223).The flowchart of the processing program executed at that time is thesame as that shown in FIG. 26.

By execution of the processing program, the CPU 203 acquires contractualcoverage corresponding to the contractual coverage ID inputted throughthe work region 5307. For example, it acquires contractual coverage“U.S. dollar (USD)” corresponding to the contractual coverage ID “02”from combination data of the processing program.

Subsequently, the CPU 203 executing the wrapper program 5303 notifies aresult of execution to the business program 5301 (step S6225). Forexample, processing to return the “agreement currency=U.S. dollar (USD)”to a program thread according to the I/F edit class 5323 of the businessprogram 5301 as a return value is carried out. In this way, it isrecognized that the “agreement currency” for this insurance contract is“U.S. dollar (USD)”.

8-5-3-1-5. Set-Up to Work Region for Model

The CPU 203 sets up the agreement currency acquired from the wrapperprogram to a work region 2_5892 for model (step S6204, FIG. 62). Forexample, “U.S. dollar (USD)” is set into an agreement currency 5851 asshown in the record 5807 in FIG. 58 a.

The CPU 203 reads in the cash surrender value amount 5831 from thecalculation result data 5355 of the work region 5307 and set it up to aforeign currency amount 1_5853 of input data in the work region workregion 2_5892 for model (step S6205). For example, as shown in therecord 5807 of FIG. 58 a, “904” of the cash surrender value amount 5831is set into “904” of the foreign currency amount 1_5853.

The CPU 203 reads in the paid insurance premiums 5833 from thecalculation result data 5355 of the work region 5307 and sets up to aforeign currency amount 2_5855 of input data in the work region workregion 2_5892 for model (step S6207). For example, as shown in therecord 5807 of FIG. 58 a, “723” of the paid insurance premiums 5833 isset into “723” of the foreign currency amount 2_5855.

The CPU 203 sets up a yen converting object flag 5857 of input data inthe work region 2_5892 into ON-state (step S6209).

When the agreement currency is not a foreign currency such as “yen”, theyen converting object flag 5857 will be set up in OFF-state as aninitial value.

8-5-3-2. Yen Converting Calculation Processing (Calculation Model)

Upon completion of the yen converting calculation processing (I/F editclass), the CPU 203 performing the business program carries out yenconverting calculation processing (calculation model) (FIG. 61, stepS6103). FIG. 63 shows a flowchart of the yen converting calculationprocessing (calculation model). In this drawing, the CPU 203 reads inthe yen converting object flag from the work region 2_5892 and judgeswhether or not the flag is in ON-state and if On-state, then reads inamounts of foreign currencies 1, 2 and so on from work region 5307(steps S6301 through S6305). For example, it reads in the foreigncurrency amount 1_5853 “904” and the foreign currency amount 2_5855“723”.

Upon reading in the foreign currency amounts, the CPU 203 further readsin the agreement currency 5851 from the work region 2_5892 and acquiresa yen conversion rate from a predetermined table (step S6307). Forexample, a yen exchange rate corresponding to “U.S. dollar (USD)” isread in.

Subsequently, the CPU 203 calculates yen equivalent amounts for each offoreign currencies thus read in and outputs the amounts to the workregion for model (steps S6309 through S6311). For example, a yenequivalent amount 1 corresponding to the foreign currency amount 1 iscalculated by multiplying the foreign currency amount with the yenexchange rate acquired in step S6307. Hence, the CPU 203 can calculateyen equivalent amount (yen equivalent amount 1 or yen equivalent amounts2) corresponding to the cash surrender value amount (foreign currencyamount 1) and the paid insurance premiums (foreign currency amount 2).

The above processing is skipped and the process ends when the yenconversion object flag 5857 is set up in OFF-state in step S6303.

8-5-4. Withholding Tax Amount Calculation Processing (Yen ConvertingResponding)

Upon completion of the yen calculating processing, the CPU 203 executingthe business program carries out withholds tax amount calculationprocessing (yen converting responding) (step S5409, FIG. 54 b). Thisprocessing is performed by sequentially carrying out the withholding taxamount calculation processing (I/F edit class) and the withholding taxamount calculation processing (calculation model) (FIG. 55, S5421through S5425) similar to that of the processing details (1).

8-5-4-1. Withholding Tax Amount Calculation Processing (I/F Edit Class)

FIG. 56 a is a flowchart of the withholding tax amount calculationprocessing (I/F edit class) in the processing details (3).

8-5-4-1-1. Acquisition of Agreement Currency

Subsequently, the CPU 203 acquires the transaction data related to theinsurance contract by reading in the work record 5351 of the work region5307 and carries out processing to acquire agreement currency bydelivering to the wrapper program 5303 the clause ID and a predeterminedprocessing name (steps S5701, S5721 through S5725 and S5741). Theprocessing are the same as that of steps 6201, S6221 through S6225,S6241 (FIG. 62) in the above-described conversion processing.

For example, the CPU carrying out the yen converting calculationprocessing (I/F edit class) acquires the “agreement currency=U.S. dollar(USD)” as a return value by delivering to the wrapper program 5303 theclause ID 5813 “55555” and the “agreement currency acquire” asprocessing name.

8-5-4-1-2. Set-Up to Work Region

The CPU 203 judges whether or not the agreement currency of theinsurance contract relating to the work record 5351 is a foreigncurrency in accordance with the return value acquired from the wrapperprogram 5303 (step S5703).

When it is judged that the agreement currency is a foreign currency instep S5703, a cash surrender value amount (yen equivalent amount) 5832of the calculation result data 5355 in the work region 5307 is read inand the amount is set up in a total income amount 5835 in the workregion 5891 for model (step S5705, FIG. 56 a). For example, as shown inthe record 5803 of FIG. 58 a, “¥100,000” of the cash surrender valueamount (yen equivalent amount) 5832 is set into “¥100,000” of the totalincome amount 5835.

The CPU 203 reads in the paid insurance premiums 5834 from thecalculation result data 5355 of the work region 5307 and set it up to alegitimate expense 5837 in the work region 5891 for model (step S5707).For example, as shown in the record 5803 of FIG. 58 a, “¥80,000” of thepaid insurance premiums 5833 is set into “¥80,000” of the legitimateexpense 5837.

On the other hand, when it is judged that the agreement currency is nota foreign currency in step S5703, similar to the processing details (1),the cash surrender value amount 5831 of the calculation result data 5355in the work region 5307 is read in and set it up to the total incomeamount 5835 of the input data in the work region 5891. And then the paidinsurance premiums are read in and the insurance premiums 5833 are setinto the legitimate expense 5837 of the input data in the work region5891 for model (steps S5706, S5708).

8-5-4-1-3. Steps S5709 Through S5717 (FIG. 56 a)

Processing of steps S5709 through S5717 is the same as that of stepsS5505 through S5513 shown in FIG. 56 described in the processing details(1). In other words, the CPU 203 acquires another insurance classrelating to the clause ID when both conditions such as the insurancecontract is “lump-sum payment” and “cancelled within five years from thecontract date” are satisfied and sets up the taxation withholding taxflag 5841 to ON-state in the work region 5891 when the insurance classis annuity certain.

8-5-4-2. Withholding Tax Amount Calculation Processing (CalculationClass)

Upon completion of the cash surrender value calculating processing (I/Fedit class), the CPU 203 executing the business program carries outwithholding tax amount calculation processing (calculation model)similar to the processing details (1) (FIG. 61, S6103).

The withholding tax amount calculation processing (calculation model) isthe same as that described in the processing details (1) shown in FIG.57. It is, therefore, the CPU 203 outputs to the withholding tax amount5843 of the output data in the work region 5891 for model thewithholding tax amount thus calculated (step S6105).

8-5-5. Display of Screen-Image (Business Program)

The CPU 203 executing the main processing part 5321 of the businessprogram 5301 displays the cash surrender value amount, the paidinsurance premiums and the withholding tax amount stored in the workregion 5307 on a foreign currency annuity cash surrender value amountcalculation screen 600 (step S5411, FIG. 54 b). For example, the cashsurrender value amount 5831 “$904”, the paid insurance premiums 5833“$723” and the withholding tax amount 5839 “¥4,000” recorded on therecord 5805 are respectively displayed on the display field for cashsurrender value amount 604, the display field for paid insurancepremiums 605 and the display field for withholding tax 606 shown in FIG.60.

8-5-6. Conclusion

As described in the above, in the business application, adjustment inthe difference of product features and that of functional requirementscan be localized by constituting the processing function executing aspecific calculation is made to be independent of the main processingpart such as the “I/F edit class” and “calculation model”.

Consequently, proper adjustment can be carried out without givinginfluence on entire business programs even when a product havingdifferent product feature is added and further addition of a function(s)differ from the functional requirements. In this way, a data managementsystem capable of increasing of usability and versatility can beprovided.

The adjustment in difference of product features and that of functionalrequirements can be controlled in a hierarchical fashion by unifying theinterface between each business application using data storage object.

9. Ninth Embodiment

Although, examples in which the transaction data including pluralproducts with which the data items to deal with differ mutually ismanaged is described in the first through eighth embodiments, anapplication program dealing such transaction data will be described inthis embodiment.

For example, an application for adjusting a screen by which eachtransaction data is adjusted individual basis will be discussed. Asdescribed in the above, since product features of an insurance productrecorded on each transaction data are determined by clause ID, dataitem(s) to be displayed on the screen as an object(s) to be adjusteddiffer. Consequently, when a screen adjustment application is generated,a countermeasure of creating an adjustment screen for each clause ID or,creating an adjustment screen capable of responding in common with allclause IDs can be considered.

When such countermeasure is employed, however, the adjustment screenneeds to be adjusted simultaneous with the variation of the insuranceproduct and/or data item, so that the adjustment become complicated.Hence, such adjustment could be a factor of enormous increase of themaintenance cost to a system change. Especially, in package softwareindustry in which insurance products and functional requirements differdepending on each company is a premise thereof, the adoption of aversatility data management technique capable of suppressing not onlythe maintenance cost at the time of employment but also the customizecost at the time of its introduction is desired.

Considering the above described points, a data management apparatuscomprising an application program capable of easily responding variationof plural insurance products having different product features and thatof their data items will be described in this embodiment.

Similar to the fourth embodiment, the term “product definition data”described in the first through the third embodiments is read as the term“clause definition data” in this embodiment.

9-1. Functional Block Diagram

FIG. 1 a is a functional block diagram of a data management apparatusaccording to this embodiment. In this drawing, the data managementapparatus 1 comprises a display format definition part 20 in addition tothe input means 11, the data storage part 13, the data processing means15, the data definition part 17 and the display means 19.

The display format definition part 20 records a display format for datacontents or data contents IDs which are the processing result of thedata processing means 15. The display means 19 displays thereon datacontents or data contents IDs in accordance with the display formatrecorded on the display format definition part 20.

9-2. Hardware Structure

FIG. 2 a shows an example of hardware structure of a computer apparatusrealized by the data management apparatus 1 according to the presentinvention using a CPU. In the drawing, the data management apparatus 1comprises the display 201, the CPU 203, the memory 205, the keyboard/mouse 207, the hard disk 209, the CD-ROM drive 211 and thecommunication circuitry 215 similar to the one shown in FIG. 2.

The hard disk 209 stores a display format table 2098 in addition to thebusiness program 2091, the transaction database 2093 and the clausedefinition program 6405.

9-3. Processing Details (1)

Processing details of this embodiment will be described with referenceto FIGS. 64 through 72. In this embodiment, the business program is anapplication program for managing contractual data and product data oflife insurance.

FIG. 64 shows a functional block diagram of a business program 6401, awrapper program A6403 another wrapper program B6404, a clause definitionprogram 6405 so on and a display format table 6407.

The business program 6041 comprises a main processing part 6421 forimplementing processing on user interface such as image processing and adatabase.

The wrapper program A6403 includes the processing programrequest/execution part 6423 requesting a processing program to theclause definition program 6405 and implementing the program.

The clause definition program 6405 comprises a processing programgeneration part 6427 for generating a processing program on receipt of arequest from the wrapper program A6403, a processing code storage part6429 storing processing codes for each processing name and a combinationdata storage part 6430 recording combination data for set up to aprocessing code (when the clause ID is “11111”).

The wrapper program B6404 comprises a display format acquisition part6425 for acquiring from the display format table 6407 the display format6423 for displaying predetermined contract conditions on the screen.

In this embodiment, screen display processing capable of directlyadjusting arbitrary contract conditions recorded about the transactiondata of a predetermined insurance contract will be described.

FIGS. 65 through 67 and 72 are flowcharts of the business program 6401,the wrapper program A6403 and another wrapper program B6404 or theclause definition program 6405 executed by the data management apparatus1 in the above mentioned case.

9-3-1. Acquisition of Screen-Image Data

FIG. 68 shows a screen-image of an individual adjustment screen 680displayed on the display 201 under the execution of the main processingpart 6421 (FIG. 64) in the business program 6401. On this screen, anentry field for policy number 681 is displayed on the first area 6801, adisplay field for contract date 683, a display field for insurance class684, a display field for annuity payment period 685 and a display fieldfor notification date 686 and so on is displayed on the second area6802. On the initial display of the individual adjustment screen 680,data displayed only on the first area 6801, none of data is displayed onthe second area.

The operator of the data management apparatus 1 can instruct display ofthe individual adjustment data according to the transaction data ofinputted policy number by inputting a policy number to be individuallyadjusted into the entry field 681 and clicking a data calling button682. For example, the operator instructs the execution of processing forcalling the individual adjustment data on the policy number “00001” byinputting “00001” into the entry field 681 and clicking button 682.

On receipt of clicking of the button 682, the CPU 203 executing the mainprocessing part 6421 acquires the screen-image data (step S6501, FIG.65). For example, the CPU 203 acquires the policy number “00001” as thescreen-image data.

9-3-2. Wrapper Program A (Business Program)

In the business program 6401, the CPU 203 acquires the transactionrecord of the insurance contract and stores it to a predetermined workrecord (step S6503). For example, the record whose policy number is“00001” is extracted from the transaction database 2093 and acquires therecord as a work record 7101 shown in FIG. 71.

Upon acquisition of the record, the CPU 203 delivers the acquired recorddata and the predetermined processing name(s) to the wrapper programA6403 (step S6505). In the above-description, individual adjustmentprocessing for data (contractual coverage) on data items (contractconditions) recorded in the transaction data of the insurance contractaccording to the policy number is carried out. Thus, the CPU 203delivers to the wrapper program A6403 “data item acquisition” asprocessing name, for example.

9-3-3. Specification of Clause Definition Body (Wrapper Program A)

Upon delivery, the wrapper program A6403 delivers the processing nameacquired from the business program 6401 to the clause definition programspecified according to the clause ID (step S6521).

For example, in the record 7101 shown in FIG. 71, the clause definitionprogram 6405 is specified according to a clause ID “11111”. Also, theCPU 203 delivers the “data item acquisition” as processing name.

9-3-4. Acquisition of Processing Data and Combination Data (ClauseDefinition Program)

Subsequently, the case in which a processing code is delivered to theclause definition program having clause ID “11111”, will be describedhereunder. On receipt of delivery, the CPU 203 carries out theprocessing program generation part 6427 of the program 6405 and acquiresa processing code corresponding to the inherited processing name byconducting a search of the processing code storage part (step S6541). Inthe processing code storage part 6429, processing IDs are recorded foreach processing name. For example, the CPU 203 acquires a processingcode 6429 a which has a processing name of “data item acquisition” byconducting a search and the like.

Subsequently, the CPU 203 acquires all contract conditions used for theexecution of the processing code with reference to “relation table forvariable n and contact conditions” 691 a stored in the processing codestorage part 6429 (FIG. 69) and further acquires combination data ofcontractual coverage and contractual coverage ID according to eachcontract condition being acquired from the combination data storage part6430 (step S6543).

In the combination data storage part 6430, combination data is recordedfor each contract condition (data item). For example, the CPU 203acquires combination data such as “annuity class” 6430 a, “paymentperiod” 6430 b and so on regarding all contract conditions (data items)capable of being set in the clause ID.

9-3-5. Generation of Processing Program (Clause Definition Program)

The CPU 203 generates a processing program in accordance with theprocessing code acquired from the processing code storage part andcombination data acquired from the combination data storage part (stepS6545). FIG. 69 shows a diagram illustrating a structural example of theprocessing program thus generated. Such processing program 690 comprisesa processing code 691 and combination data 692, another combination data693 and so on. Program codes for acquiring all the contractual coveragecapable of being selected for all the contract conditions (data items)are described in the processing code 691, for example. Such descriptionformat of the program codes may either be a source code or an objectcode.

Combination data of contractual data and a contractual coverage ID usedfor acquiring all the contractual coverage capable of being selected forall contract conditions (data items) are described in the combinationdata 692 and 693 and so on. The description format of the combinationdata can be any format capable of identifying the contractual coveragecorresponding to the contractual ID at the execution of the programcode. Formats such as a sequence format and a table format and the likecorrespond to the description format.

9-3-6. Delivery of Processing Program

The CPU 203 executing the clause definition program 6405 delivers thegenerated processing program 690 to the wrapper program A6403 (stepS6547). For example, the CPU 203 carries out a processing for deliveringthe processing program 690 using a redirect function and a pipe functionand so on.

9-3-7. Execution of Processing Program

In implementing the wrapper program A6403, the CPU 203 carries out theprocessing program 690 inherited from the clause definition program6405, and acquires all contract conditions capable of being set toclause IDs specified by the policy numbers acquired from thescreen-image data and all contractual coverage capable of being selectedby the contract conditions (step S6523).

FIG. 67 shows a flowchart of a processing program 690 performed at thattime. In implementing the processing program 690, the CPU 203substitutes 1 for local variable n (step S6701). Here, the localvariable n is a value of a variable for specifying data item oftransaction data “variable n”. For example, the “variable n” is treatedas “variable 1” when the local variable n is 1.

The CPU 203 reads in “contract conditions” corresponding to the“variable n” from the “relation table for variable n and contactconditions” 691 a stored in the processing program 690 (step S6703). Forexample, “annuity class” recorded corresponding to “variable 1” of therelation table 691 a in the processing code 691 shown in FIG. 69 is readin.

Subsequently, the CPU 203 reads all the combination data according tocontract conditions thus read in as described in the above (step S6705).For example, all the combination of the contractual coverage IDs and thecontractual coverage recorded for “annuity class” of the combinationdata 692 shown in FIG. 69 are read.

The CPU 203 outputs the contract conditions and the contractual coveragethus read in to “relation table of contract conditions and contractualcoverage”. For example, as shown in the “relation table of contractconditions and contractual coverage” 670 of FIG. 67, “annuity certain”and “whole life annuity with guaranteed installment” are output ascontractual coverage when the contract condition is in “annuity class”.

The CPU 203 judges contractual coverage corresponding to the contractualcoverage ID recorded on the variable in the work record in order to setup initial values of the individual adjustment screen 680, conducts asearch for the same contractual coverage with the judged contractualcoverage on the “relation table of contract conditions and contractualcoverage” 670, and records a selection flag corresponding to thecontractual coverage.

For example, the CPU 203 stores the selection flag corresponding to thecontractual coverage “annuity certain” in the “relation table ofcontract conditions and contractual coverage” 670 because a variable1_719 recording a contractual ID of “annuity class” is “01” in therecord 7101 of the work record shown in FIG. 71 and the contractualcoverage represented by its contractual ID “01” is “annuity certain” inthe combination data 692 of “annuity class” shown in FIG. 69. Thus, theinitial value of “annuity class” in the individual adjustment screen 680can be displayed as “annuity certain”.

Then the CPU 203 substitutes n+1 for the local variable n (step S6711).For example, as a result of such substitution, the “variable 1” istreated as the “variable 2”.

Subsequently, the CPU 203 judges whether or not contract condition forthe variable n exist in the “relation table for variable n and contactconditions” 691 a and repeats the above processing by returning to stepS6703 (step S6713, YES). For example, since “variable 2” exits in the“relation table for variable n and contact conditions” 691 a, theprocess on the contract conditions “payment period” corresponding to“variable 2” starts from step S6703.

By executing step S6707 on the contract conditions “payment period”,“payment period” is output to the contract conditions as shown in the“relation table of contract conditions and contractual coverage” 670 and“whole life”, “5 years”, “10 years”, “15 years” and “20 years” areoutput to the contract conditions.

By executing step S6709 on the contract conditions “payment period”, theCPU 203 records a selection flag corresponding to the contractualcoverage “5 years” in the “relation table of contract conditions andcontractual coverage” 670 because a variable 2_721 recording acontractual ID of “payment period” is “02” in the record 7101 of thework record shown in FIG. 71 and the contractual coverage represented byits contractual ID “02” is “5 years” in the combination data 693 of“payment period” shown in FIG. 69.

If no contractual condition on the variable n will not exist, suchprocessing is terminated (step S6713, NO).

9-3-8. Notification of Execution Results

The CPU 203 executing the wrapper program A6403 notifies the executionresults to the business program 6401 (step S6225, FIG. 65). For example,processing to return the “relation table of contract conditions andcontractual coverage” 670 to a program thread of the business program6401 as a return value is carried out.

9-3-9. Acquisition of Display Format

Upon receipt of the “relation table of contract conditions andcontractual coverage” 670, the CPU carrying out main processing part6421 delivers to the wrapper program B6404 “relation table of contractconditions and contractual coverage” 670 (step S6601, FIG. 66). Forexample, “relation table of contract conditions and contractualcoverage” 670 shown in FIG. 70 is delivered.

The CPU 203 executing the wrapper program B6404 refers to the displayformat table 6407 in accordance with each contract condition in theinherited “relation table of contract conditions and contractualcoverage” 670 and acquires display formats recorded correspondently tosuch contract condition (step S6621). Here, the display format table6407 is a table for defining display formats for displaying datarepresenting contractual coverage on predetermined contractualconditions on the screen.

For example, a “dropdown menu” 705 is acquired as a display format fordisplaying data representing contractual coverage of the contractcondition “annuity class” by referring to the display format table 6407in accordance with a contract condition “annuity class” 701 of the“relation table of contract conditions and contractual coverage” 670shown in FIG. 70.

The CPU 203 acquires display formats for all the contract conditions inthe inherited “relation table of contract conditions and contractualcoverage” 670 and adds the acquired each display format correspondentlyto each contract condition in the “relation table of contract conditionsand contractual coverage” 670 as a data stream. For example, displayformats for each contract condition of the “relation table of contractconditions and contractual coverage” 670 is added as shown in a table700 shown in FIG. 70.

The CPU 203 executing the wrapper program B6404 delivers the “relationtable of contract conditions and contractual coverage” to which thedisplay formats are added to the main processing part 6421 of thebusiness program 6401 (step S6623). For example, processing to returnthe “relation table of contract conditions and contractual coverageadding display formats” 700 shown in FIG. 70 to a program thread of thebusiness program 6401 as a return value is carried out.

9-3-10. Generation of UI (User Interface) Screen-Image

Upon receipt of the“relation table of contract conditions andcontractual coverage adding display formats” 700, the CPU 203 generatesan UI screen-image regarding the transaction data (step S6603). Forexample, a second area 6802 of the individual adjustment screen isgenerated in accordance with the“relation table of contract conditionsand contractual coverage adding display formats” 700.

In generation of the UI screen-image, the CPU 203 generates a screenimage by performing an UI screen-image generation processing describedhereunder for data items of variation n (n=1, 2 and so on) shown intransaction data of FIG. 71. With regard to the contract date 715 and anotification date 723 and so on, data values are output as screen-imagedata in accordance with display formats acquired from the display table6407 based on the name of data items in the transaction data. Forexample, data value “2005/07/15” of the contract date 715 (FIG. 71) isoutput as data “Jul. 15, 2005” as a result of editing according to thedisplay format of the contract date of “Month Date, Year”.

FIG. 72 shows a detailed flowchart of the UI screen-image generationprocessing in step S6603. The CPU 203 reads in one contract conditionfrom the relation table 700 (step S7201). For example, it reads in acontract condition of “annuity class”.

Subsequently, the CPU 203 reads in display formats storedcorrespondently with the contract conditions thus read from the relationtable 700 (step S7203). For example, a display format “dropdown menu”for “annuity class” is read in.

The CPU 203 reads in all the contractual coverage for the contractconditions read in from the relation table 700 (step S7205). Forexample, contractual coverage “annuity certain” and “whole life annuitywith guaranteed installment” for the “annuity class” are read in.

The CPU 203 edits the contract conditions and the contractual coveragethus read in accordance with the display formats read in at step S7203(step S7207). For example, contractual coverage “annuity certain” and“whole life annuity with guaranteed installment” for the “annuity class”are edited in accordance with the display format “dropdown menu”. Inother words, both the contractual coverage “annuity certain” and “wholelife annuity with guaranteed installment” are set as selected items inthe drop down menu for selecting “annuity class”.

Subsequently, the CPU 203 reads in a selection flag for the contractualcoverage thus read in from the relation table 700 and sets thecontractual coverage into which the selection flag is set as an initialvalue of selected items edited according to the display format (stepS7209). For example, the initial value of the contractual coverage inthe dropdown menu for selecting “annuity class” is set as “annuitycertain” as a result of setting a selection flag in the contractualcoverage “annuity certain” according to “annuity class”.

The CPU 203 outputs the contractual conditions and contractual coverageboth edited in the above as data to the UI generation screen-image (stepS7211). For example, the initial value of the dropdown menu for annuityclass is output as “annuity certain” as shown in the display field forinsurance class 684 in the second area 6802 on the individual adjustmentscreen 680 shown in FIG. 68.

The CPU 203 repeatedly executes steps 7201 through S7211 described inthe above for all the contract conditions stored in the relation table700 (step S7213). By doing this, UI screen-images are generated for allthe data items of the variable n in the transaction data.

Upon completion of the UI screen-image generation processing, the CPU203 outputs to the display 201 the generated screen-image as anindividual adjustment screen (FIG. 66, step S6605). For example, thecontract date, the annuity class, the payment period, the notificationdate and so on is displayed as shown in the individual adjustment screen680 of FIG. 68.

9-4. Processing Details (2)

An example of generating an individual adjustment screen for aninsurance product (annuity insurance, for example) having clause ID“11111” recorded in the transaction data of policy number “00001” isdescribed in the above described processing details (1).

In the processing details (2), an example of generating an adjustmentscreen for an insurance product (whole life insurance, for example)having clause ID “99999 recorded in the transaction data of policynumber “00009” will be described. Only points different from theprocessing details (1) will be described for clarity because basicallysimilar program to the processing details (1) is used for the processingdetails (2).

9-4-1. Acquisition of Screen-Image Data

FIG. 68 a shows an example of the individual adjustment screen 680displayed on the display 201 as a result of execution of the mainprocessing part 6421 of the business program 6401. In this example, theentry field for policy number 681 is displayed in a first area 6801 andthe display field for contract date 683, a display field of living-needsrider 687, a display field of long-term hospitalization rider 688 and adisplay field of notification date 686 and son on are displayed in thesecond area 6802.

The operator of the data management apparatus 1 instructs execution ofprocessing for calling up individual adjustment data for a policy number“00009” by inputting “00009” into the entry field for policy number 681and clicking the data calling button 682.

9-4-2. Start-Up of Wrapper Program A (Business Program)

In the business program 6401, the CPU 203 extracts the record whosepolicy number “00009” from the transaction database 2093 and acquiresthe record as a work record 7102 shown in FIG. 71 and delivers theacquired work record 7102 and processing name “data item acquisition” tothe wrapper program A6403.

9-4-3. Specification of Clause Definition Body (Wrapper Program A)

Upon delivery, the wrapper program A6403 specifies a clause definitionprogram in accordance with a clause ID 713 “99999” of a record 7102 anddelivers the “99999” and the processing name “data item acquisition” tothe specified program.

9-4-4. Acquisition of Processing Code and Combination Data (ClauseDefinition Program)

Upon delivery, the CPU 203 carries out the processing program generationpart of the clause definition program according to the clause ID “99999”and acquires the processing code corresponding to the inheritedprocessing name “data item acquisition” by conducting a search for theprocessing code storage part.

Subsequently, the CPU 203 acquires all the contract conditions used atthe execution of the processing code by referring “relation table ofvariable n and contract condition” 691 b (FIG. 69 a) recorded in theprocessing code and further acquires combination data of the contractualcoverage and the contractual coverage ID according to each contractcondition thus acquired from the combination data storage part. Forexample, the CPU 203 acquires combination data “living needs rider”,“long-term hospitalization” and so on for all possible contractcondition (data items) capable of being set in the clause ID.

9-4-5. Generation of Processing Program

The CPU 203 generates a processing program illustrated its structure inFIG. 69 a in accordance with the processing code acquired from theprocessing code storage part and the combination data obtained from thecombination data storage part. Such processing program comprisescombination data 694 of the processing code 691 and the “living needsrider”, combination data 695 of the processing code and “long-termhospitalization” and so on.

9-4-6. Delivery of Processing Program

The CPU 203 executing the clause definition program delivers thegenerated processing program 690 to the wrapper program A6403.

9-4-7. Execution of Processing Program

In implementing the wrapper program A6403, the CPU 203 carries out theprocessing program 690 inherited from the clause definition program andacquires all the contract conditions (such as “living-needs rider”,“long-term hospitalization rider” and so on) capable of setting to theclause ID “99999” specified by the policy number “00009” obtained fromthe screen-image data and all the contractual coverage (such as “yes”,“no” or “no”, “equal or more than 50 days”, “equal or more than 100days”) capable of being selected in each of the contract conditions.

9-4-8. Notification of Execution Results

The CPU 203 executing the wrapper program A6403 carries out processingto return the “relation table of contract conditions and contractualcoverage” to a program thread of the business program 6401 as a returnvalue.

9-4-9. Acquisition of Display Format

Upon receipt of the “relation table of contract conditions andcontractual coverage”, the CPU 203 delivers to the wrapper program B6404the “relation table of contract conditions and contractual coverage” andrefers to the display format table 6407 in accordance with each ofcontract condition and acquires a display format correspondentlyrecorded to the contract condition.

For example, a “dropdown menu” is acquired as a display format fordisplaying data representing contractual coverage of the contractcondition the “living-needs rider” by referring to the display formattable 6407 in accordance with a contract condition “living-needs rider”of the “relation table of contract conditions and contractual coverage”.

The CPU 203 executing the wrapper program B6404 delivers to the mainprocessing part 6421 of the business program 6401 the “relation table ofcontract conditions and contractual coverage” adding its display format.

9-4-10. Generation of UI (User Interface) Screen-Image

Upon receipt of the “relation table of contract conditions andcontractual coverage adding its display format”, the CPU 203 generates asecond area 6802 of the individual adjustment screen 680 shown in FIG.68 a.

In generation of the UI screen-image, the CPU 203 generates a screenimage by performing an UI screen-image generation processing describedin the processing details (1) for data items of variation n (n=1, 2 andso on) shown in transaction data of FIG. 71.

Upon completion of the UI screen-image generation processing for all thedata items in the transaction data, the CPU 203 outputs to the display201 the generated screen-image as an individual adjustment screen anddisplay thereon the contract date, the living-needs rider, the long-termhospitalization rider and the notification date and so on as illustratedin the individual adjustment screen 680 in FIG. 68 a.

It is possible to set-up each contract condition (data item) managed inthe clause definition body as display data of an individual adjustmentscreen-image even when a clause ID specified by a policy number differs.

9-5. Conclusion

As described in the above, it is possible to execute data-led UIscreen-image generation processing based on a clause definition programaccording to the present invention. Hence, it is possible to use withoutany change to an application for the adjustment screen-image even wheninsurance products and their data items change and is possible toenormously suppress the maintenance cost for system change.

In a field of packaging software in which statuses of insurance productsand functional requirements differ depending on each company is apremise thereof, a data management method having a high versatilitycapable of decreasing not only the maintenance cost during the operationbut also the cost in customization can be provided.

9-6. Others

In the above, all the contractual conditions according to a clause IDare displayed on the screen, it is possible to select contractconditions to be displayed on the business program side.

In the above description, it constituted so that the initial value ofthe contractual coverage capable of being selected for contractcondition according to a clause ID is set up in accordance with thevariable data recorded in the transaction data, it is possible not todisplay the contractual coverage but to display just the contractconditions if no transaction data exist. For example, a data entryscreen for initial registration corresponds to this. In this case, apredetermined contractual coverage appointed by the business program maybe employed as an initial value.

Although, en example of constructing so that contractual coverage oncontract conditions according to a clause ID is displayed on the screenis described in the above, it is possible to display just thecontractual coverage ID or both the clause ID and the contractualcoverage at the same time.

Although, dropdown menu and radio buttons are exemplified as tools fordisplaying the contractual coverage on contract conditions according toa clause ID in the above description, other entry display form may beused. For example, text boxes, check boxes and so on may also be used.

Although, dropdown menu and radio buttons and so on are exemplified asdisplay formats for displaying the contractual coverage on contractconditions according to a clause ID in the above description, colors fordisplay, display size, digit numbers of display or display positions andso on may be included therein.

Although, an example of using one display format table for the entiresystem is described in the above description, it is possible toconstruct display format tables for each of company IDs and mayselectively use a display format in accordance with company ID recordedin the transaction data. Alternatively, clause IDs, user IDs and anyother IDs may also be used instead of company IDs.

10. Other Embodiments 10-1. Common Use of Processing Code

In the first embodiment described in the above, the processing programis generated in accordance with a processing code generated for eachdata item and the combination data, the processing code corresponding todata item may be generated by making processing codes in common andincorporating data item and variable position corresponding to a classID into the processing code. For example, information on data item“annuity class” and variable position “variable 1” specified from theprocessing name may be incorporated into a processing code for set-upwhen “annuity class set-up” is carried out.

10-2. Decentralization of Apparatus Structure

In the first embodiment described in the above, the data managementapparatus is configured using the business program 2091 and the productdefinition program 2094 both installed inside of the data managementapparatus 1, such management apparatus may be configured so that each ofthe programs is installed into separated computer devices. In this case,a processing program is generated by a computer device performing theproduct definition program 2094 on receipt of a request from a computerdevice executing the business program 2091. In this way, decentralizedprocessing can be carried out by the computers each managing productsand generating a processing program, so that processing load at eachcomputer device can be decreased.

When a computer device performing the product definition program 2094 isconfigured, the data definition part storing a correspondence table ofdata content IDs and data contents and the processing definition partrecording processing codes can respectively be realized by thecombination data storage part 735 (FIG. 7) and by the processing codestorage part 733 (FIG. 7). Correspondence table acquisition meansspecified by specification processing, processing code acquisition meansfor acquiring processing code and program generation means forgenerating a program according to the correspondence table and theprocessing code can respectively realized by the processing programgeneration part 731 (FIG. 7).

10-3. Hierarchization of Product Definition

In both the first embodiment shown in FIG. 7 and the second embodimentshown in FIG. 9, the data management apparatus is configured using theproduct definition program generated respectively for a clause ID (classID), one product definition program capable of being used commonly toall the clause IDs (class IDs) may be used.

FIG. 11 shows a functional block diagram of the product definitionprogram in this case. As illustrated in FIG. 11, the product definitionprogram according to the present invention comprises a processingprogram generation part 110, a first hierarchy 111, a second hierarchy112, and a third hierarchy 113. In the first hierarchy, the processingcode storage part and the combination data storage part are recorded foreach of product categories, the processing code storage part and thecombination data storage part are stored for each of clause classes inthe second hierarchy and the processing code storage part and thecombination data storage part are recorded for each of clause versionsin the third hierarchy.

Here, product categories, the clause classes and the clause versions aredefined based on the clause IDs. For example, the clause ID “010101” canrespectively specified the product category “01” 1111, the clause class“01” 1121 and the clause version “01” 1131 when the first and the secondupper digit of the clause IDs show the product category, the third andthe fourth upper digit thereof represent the clause class and the fifthand the sixth upper digit thereof show the clause version.

In the above described structure, such structure is created using anobject-oriented language so that the third hierarchy inherits the secondhierarchy, the second hierarchy inherits the first hierarchyrespectively. In other words, it is defined that the first hierarchy isa parent object of the second object and the second hierarchy is aparent object of the third object. Therefore, the processing programgeneration part 110 can acquire both the processing code storage partand the combination data storage part defined in objects of the secondhierarchy and the first hierarchy by accessing the third hierarchy inaccordance with the clause ID.

This result in simplification of structure of the product definitionbody because the processing codes and the combination data stored in theproduct definition program can commonly recorded among each of classIDs. In addition, even when new products are added, themaintenance-ability of the apparatus can be increased because just thedifference of the new product(s) and the current available products needto be created in a predetermined hierarchy.

In the life insurance industry and the like, especially, it must bedealt with as a different product with contract even if it is theproduct that has slight difference in its features. Also, it isnecessary to continue managing such products with accuracy for a longperiod of time. Under the circumstances, application of the datamanagement apparatus according to the present invention can increase themaintenance-ability by adding a clause version to the third hierarchyduring the update of clause and adding product category of the firsthierarchy and adding clause version of the second hierarchy during theaddition of new product(s). No adjustment in business program isrequired with the addition/adjustment of product(s) because the productdefinition program for defining products and the business program forexecuting business application are configured separately.

When insurance products for plural companies (life insurance companies)are handled in one system, both the processing code and the combinationdata in a predetermined hierarchy may be created for each of thecompanies. For example, when clause class is set for each company in thesecond hierarchy, information identifying each company may be added tothe clause class. In practice, such approach may be realized bycomposing the clause class (4 digits) of a company code (2 digits) and aclause code (2 digits) and then a processing code and combination dataresponding to each are created in the product definition body.

In this way, data management can be performed within the same systemeven when the company data is for plural companied each having differentcontract conditions in clause and contractual coverage. Such datamanagement is suitable for outsourcing business or ASP business and thelike which handle all data management for plurality of companies.

In the present invention the term “company” is not only a businessenterprise as an organization carrying out similar economical activitiesin a continuous/systematic fashion for the purpose of profit, but also aconcept including a group of companies composed of a plural enterprisescarrying out economic activities with collaboration and an intra-farmgroup forming a predetermined group by which similar economic activitiesare carried out within the same business enterprise.

10-4. Application to Other Industry

In the above-described embodiments, while examples of applying thepresent invention to data management for insurance products mainly inthe life insurance industry are described, the present invention isapplicable to data management in other industry in the case of managingplural class of data having different data management items. FIG. 12shows a correspondence table for applying management data, data classand data items in the life insurance industry to other industry.

For example, in the life insurance industry shown as a reference number121 in FIG. 12, it is possible to manage data relates to “insurancecontract” as management data, to handle data items relate to “annuityinsurance” and “whole life insurance” as data class, to record datacontents relate to “annuity class”, “annuity payment period” as dataitems of “annuity insurance” and to record data contents relate to “steppayment period, step payment ratio” as data items of “whole lifeinsurance”.

Similarly, in the bank industry shown as a reference number 124, it ispossible to manage data relates to “derivative” as management data, tohandle data items relate to “interest-rate swap” and “option” as dataclass, to record data contents relate to “class of appliedinterest-rate”, “class of target applied interest-rate” as data items of“interest-rate swap” and to record data contents relate to “strike rate”as data items of “option”.

Similar to the above, examples of data class and data items in the caseof applying the present invention to other industries and theirmanagement data are shown as reference numerals 122, 123, 125 through127 of FIG. 12. As described, the present invention is applicable to anyindustry or data management business which manage plural classes of datahaving different data management items.

10-5. Combination of Embodiments

The data management apparatus 1 may be constructed by selectivelycombining such apparatus described in the embodiments 1 through 9.Alternatively, it is possible to selectively employ structure composedof a combination of the embodiments 1 through 9 or that composed of suchcombination and either one of the above described columns such as “10-2.Decentralization of apparatus structure” and “10-3. Hierarchization ofproduct definition”.

For example, the apparatus may be configured so that upon receipt of aninstruction for updating contractual coverage from the applicationprogram, update processing of the contractual coverage is executed byacquiring a combination of a contractual coverage ID and a contractualcoverage of a predetermined contract condition corresponding to theinstruction and a program for update processing in accordance with theclause ID stored in the insurance policy data (the first embodiment),and then check processing is carried out by acquiring a check list and aprogram for check processing for performing logical check on two or morecontractual coverage (the third embodiment).

In this case, alternatively, it is possible to configure the apparatusso that a wrapper program generating a program relating to both theupdate processing and check processing and executing thereof on receiptof a request from the business application is used (the secondembodiment).

In addition, it is possible to configure the apparatus so that thestructure in which the processing program is generated by incorporatingdata item and variable position corresponding to a class ID into theprocessing code (10-1. Common use of processing code), the structure inwhich the product definition program is executed by the computer devicesseparated (“10-2. Decentralization of apparatus structure”) and thestructure in which hierarchy structure is created in one productdefinition program in order to take over product definition (10-3.Hierarchization of product definition) can be combined respectively.

10-6. Others

Although, the structure in which both the processing code storage partand the combination data storage part are provided in the productdefinition program and a processing program is generated by acquiringthe processing code and the combination data corresponding to theprocessing name is described in the above embodiments, it is possible torecord just the processing code in the product definition program andacquire the processing code from the business program or other outerprogram and execute desires processing based on the program. In otherwords, the product definition program may deliver only a data content IDand data content to a program executing processing.

In the above described embodiments, the apparatus is configured so thata processing program generated in either of the program definitionprogram and the clause definition program is delivered to an outerprogram, and the processing program is executed by a processing programexecution part of the outer program, such processing program may beexecuted a processing program execution part provided in either of theprogram definition program and the clause definition program. In thiscase, either of the program definition program and the clause definitionprogram may be configured so that a result of execution of theprocessing program is returned as a return value upon a request from theouter program. For example, the structure by which a processing programis executed in either of the program definition program and the clausedefinition program is effective when a processing program having arelatively lower processing load is carried out.

In the above described embodiments, each of the functions shown in FIG.1 is realized by utilizing a CPU and software. However, a part of thefunctions and the whole functions may also be realized by hardware suchas logic circuitry. In addition, a part of processing carried out theprogram(s) may also be executed by the operating system (OS).

While the invention is described above by way of preferable embodiments,the language used is not for limitation but for explanation and theperson having ordinary skill in the art would recognize variation(s)and/or modification(s) of a system(s), an apparatus(es), a device(s) anda method(s) and other variation(s) and/or modification(s) within thescope and spirit of the present invention defined in the appendedclaims. It is, therefore, such variation(s) and/or modification(s) isconsidered within the scope of the present invention.

1-64. (canceled)
 65. A data management apparatus comprising: a datastorage part storing plural data each of which has at least a policy IDfor specifying each insurance policy which is a contract between aninsurer and an insured, a clause ID for specifying each type of theinsurance policy i.e. specifying each insurance policy goods and a datacontent ID for specifying data content, said data storage part having apolicy ID storing region for storing the policy ID, a clause ID storingregion for storing the clause ID and variable storing regions forstoring data content IDs, each of said variable storing regions beingidentified by variable name, a correspondence definition part forstoring correspondences between said each variable name and each dataitem name, the correspondence definition part being provided for eachclause ID, a data definition part for storing data correspondencesbetween said each data content ID and each data content, the datacorrespondence being provided for each clause ID and each data itemname, a means for obtaining data having a given policy ID from the datastorage part, a means for processing data, the data processing includingidentifying the data item name corresponding to the variable name inreference to the correspondence recorded in said correspondencedefinition part identified by the clause ID of said obtained data andobtaining the data content corresponding to the data content ID of saidobtained data in reference to the data correspondence recorded in saiddata definition part identified by said identified data item name of thevariable name, thereby identifying the data item name and the datacontent of said obtained data.
 66. The data management apparatusaccording to claim 65, wherein definition storing part is provided foreach clause ID, said definition storing part having storing part forstoring processing program for each processing name, wherein saidcorrespondence definition part selectively stores the data item nameswhich are used in the processing program, said correspondence definitionpart being provided for said each processing name, wherein said dataprocessing means processes the data in response to receive theprocessing name and the policy ID, wherein said data processing meansobtains the processing program corresponding to said given processingname form the definition storing part corresponding to the clause ID ofthe data having the given policy ID, identifies the data item name usedin said processing program in reference to the definition storing partcorresponding to the given processing name of the definition storingpart corresponding to the clause ID of the data having the given policyID and obtaining the data content corresponding to the data content IDof the obtained data based on said obtained data item name in referenceto the data definition part corresponding to said given processing nameof the definition storing part corresponding to the clause ID of thedata having the given policy ID thereby deciding the data item name andthe data content of the obtained data having said given policy ID,wherein said processing means selectively obtains the data contentcorresponding to the data item name which is necessary to carry out saidobtained processing program of said given processing name from the datahaving the given policy ID and carries out said obtained processingprogram using said obtained data content.
 67. A computer-readable mediumstoring data management program, said computer having (a) a data storagepart storing plural data each of which has at least a policy ID forspecifying each insurance policy which is a contract between an insurerand an insured, a clause ID for specifying each type of the insurancepolicy i.e. specifying each insurance policy goods and a data content IDfor specifying data content, said data storage part having a policy IDstoring region for storing the policy ID, a clause ID storing region forstoring the clause ID and variable storing regions for storing datacontent IDs, each of said variable storing regions being identified byvariable name, (b) a correspondence definition part for storingcorrespondences between said each variable name and each data item name,the correspondence definition part being provided for each clause ID,(c) a data definition part for storing data correspondences between saideach data content ID and each data content, the data correspondencebeing provided for each clause ID and each data item name, saidmanagement program carrying out the steps of obtaining data having agiven policy ID from the data storage part, processing data, the dataprocessing including identifying the data item name corresponding to thevariable name in reference to the correspondence recorded in saidcorrespondence definition part identified by the clause ID of saidobtained data and obtaining the data content corresponding to the datacontent ID of said obtained data in reference to the data correspondencerecorded in said data definition part identified by said identified dataitem name of the variable name, thereby identifying the data item nameand the data content of said obtained data.
 68. The computer-readablemedium storing data management program according to claim 67, whereindefinition storing part is provided for each clause ID, said definitionstoring part having storing part for storing processing program for eachprocessing name, wherein said correspondence definition part selectivelystores the data item names which are used in the processing program,said correspondence definition part being provided for said eachprocessing name, wherein said data processing means processes the datain response to receive the processing name and the policy ID, whereinsaid data processing means obtains the processing program correspondingto said given processing name form the definition storing partcorresponding to the clause ID of the data having the given policy ID,identifies the data item name used in said processing program inreference to the definition storing part corresponding to the givenprocessing name of the definition storing part corresponding to theclause ID of the data having the given policy ID and obtaining the datacontent corresponding to the data content ID of the obtained data basedon said obtained data item name in reference to the data definition partcorresponding to said given processing name of the definition storingpart corresponding to the clause ID of the data having the given policyID thereby deciding the data item name and the data content of theobtained data having said given policy ID, wherein said processing meansselectively obtains the data content corresponding to the data item namewhich is necessary to carry out said obtained processing program of saidgiven processing name from the data having the given policy ID andcarries out said obtained processing program using said obtained datacontent.
 69. The computer-readable medium storing data managementprogram according to claim 68, wherein the definition storing partstores a processing code for executing processing for checking whether acombination of data contents corresponding to at least two data itemnames is appropriate or not and appropriate combinations of the datacontent IDs and the data contents, wherein the data management programobtains from the definition storing part the processing code togetherwith the appropriate combinations of the data content IDs and the datacontents, and wherein the data management program judges whethercombination of the data content ID and the data content to be processedis appropriate or not based on the appropriate combinations of the datacontent IDs and the data contents.
 70. The data management apparatusaccording to claim 69, wherein said processing means includes aprocessing program requesting/execution part requesting to generate aprocessing program to the data definition part and executing thegenerated processing program, and a processing program generation partgenerating a processing program in accordance with the processing codeand the combination data.
 71. The data management apparatus according toclaim 70, wherein the processing program requesting/execution part ofthe data processing means comprises a processing program requesting partrequesting to generate and deliver a processing program to theprocessing program generation part and a processing program executionpart executing the processing program received from the processingprogram generation part, and the processing program requesting part iscomposed as a wrapper program which requests to generate the processingprogram to the processing program generation part and delivers theprocessing program generated by the processing program generation partto the processing program execution part.
 72. The data managementapparatus according to claim 67, wherein the data processing meansacquires all combinations of data content IDs and data contents in alldata items stored by the data definition part for predetermined classIDs, and wherein the data processing means selectively displays the datacontent IDs or data contents based on acquired combinations of datacontent IDs and data contents when one data item corresponds to pluraldata content IDs and data contents.
 73. The data management apparatusaccording to claim 72, wherein the definition storing part recordsprocessing code for selectively displaying all of the data content IDsor data contents concerning the data item of the class ID, and whereinthe data processing means acquires the processing code concerning theclass ID and the combination of data content IDs and data contentsconcerning the data items of class ID, generates processing program bycombining the processing code and the combination of the acquired datacontent IDs and data contents and selectively displays the data contentIDs or data contents based on acquired combinations of data content IDsand data contents when one data item corresponds to plural data contentIDs and data contents.
 74. The data management apparatus according toclaim 72, further comprising a display formant definition part recordinga display format for one of the data content ID and the data content foreach data item is further provided thereto, and wherein the dataprocessing means displays one of the data content ID and the datacontent in accordance with the display format acquired from the displayformant definition part.
 75. The data management apparatus according toclaim 72, wherein the data processing means acquires the class IDs, datacontent IDs and data contents concerning the data ID from the datastorage part, and displays predetermined data content ID or data contentas default value among the all data content IDs or data contents whenselectively displays the data content IDs or data contents.
 76. The datamanagement apparatus according to claim 72, wherein the data definitionpart separately records the processing code in higher common part andlower common part, the higher common part being recorded as highhierarchy and the lower common part being recorded as low hierarchy. 77.The data management apparatus according to claim 72, wherein the datastorage part records transaction data including product data, andwherein the data processing means determines data item and data contentof the transaction data upon receipt of an instruction for processing tothe transaction data.
 78. The data management apparatus according toclaim 77, wherein the product data is data on a product defined based ona clause.
 79. The data management apparatus according to claim 78,wherein the data definition part separately records a processing codefor executing processing for handling one of data content correspondingto the data content ID, the data content ID and data content inhierarchy defined respectively by product category in which a productdetermined based on the clause belongs thereto, a class of clause and aversion of clause.
 80. The data management apparatus according to claim79, wherein the class of clause in the data definition part is composedof a company code representing nature of a company and a clause coderepresenting class of clause for the company.
 81. The data managementapparatus according to claim 67, further comprising a group definitionpart recording a set-up condition for each group combining a pluralityof class IDs, the set-up condition showing data contents recordable inthe data item of the data having class ID in the light of data contentof data item of other data having other class ID in the group.
 82. Thedata management apparatus according to claim 81, wherein the dataprocessing means specifies the group combining a plurality of class IDsaccording to the data ID, and wherein the processing means determineswhether or not a data content ID to be stored in the data storage partis recordable referring to the set-up condition recorded in the datadefinition part based on the combination of plural class IDs of theplural grouped data.
 83. The data management apparatus according toclaim 82, wherein the set-up condition includes condition showing a datacontent ID capable of being recorded in the data storage part andprocessing code for checking whether or not the predetermined datacontent ID conforms to the data content ID capable of being recorded inthe data storage part according to the condition.
 84. The datamanagement apparatus according to claim 82, wherein the set-up conditionincludes condition showing a data content corresponding to data contentID storable in the data storage part and a processing code for checkingwhether or not the predetermined data content has data contentcorresponding to the data content ID recordable in the data item. 85.The data management apparatus according to claim 84, wherein thepredetermined data content is data acquired from the data definitionpart in accordance with data content ID to be recorded in the datastorage part.
 86. The data management apparatus according to claim 84,wherein the data processing means specifies a group composed ofcombining a plurality of class IDs in accordance with the data ID andimplements processing for determining whether or not a data value to berecorded in the data storage part is recordable in accordance with theset-up condition of predetermined data stored in the group definitionpart.
 87. The data management apparatus according to claim 84, whereinthe set-up condition of predetermined data includes condition of a datavalue capable of being recorded in the data storage part and aprocessing code for checking whether or not the predetermined data valueconforms to the data value capable of being recorded in the data storagepart.
 88. The data management apparatus according to claim 81, the dataprocessing means specifies a group of the data having same data ID andacquires name of the group referring to correspondence between the nameand the combination of class IDs defined in the group definition partbased on the combination of class IDs of grouped data.
 89. The datamanagement apparatus according to claim 65, wherein the data storagepart records a combination of a data item ID and a data item for eachdata-type in the data content to be recorded in the data storage part.90. The data management apparatus according to claim 89, the data-typeincludes one of a date-type, a value-type, a character-type and abinary-type.
 91. The data management apparatus according to claim 65,wherein the data recorded in the data storing part has attribute IDrepresenting attribute of the data, and wherein the correspondencedefinition part is provided for each class ID and attribute ID and thedata definition part is provided for each class ID and data item. 92.The data management apparatus according to claim 65, wherein the dataprocessing means comprises a condition set-up part for setting upnumerals for using a calculation and calculation processing partexecutes predetermined calculation processing in accordance with setupped numerals and wherein the calculation processing part does notaccess the data definition part and the group definition part.
 93. Thedata management apparatus according to claim 92, wherein the dataprocessing means comprises a combination of the condition set-up partand the calculation processing part for each calculation processing. 94.The data management apparatus according to claim 92, further comprisinga processing data storage part temporarily storing data to be processedby the condition set-up part and the calculation processing part, andwherein the condition set-up part at the data processing meansimplements data input and data output of data to the processing datastorage part.
 95. The data management apparatus according to claim 94,wherein the processing data storage part stores data to be processed bythe condition set-up part and the calculation processing part, screeninput data and calculated data by the calculation processing part. 96.The data management apparatus according to claim 68, wherein theprocessing program storing part records processing code as saidprocessing program to which the contents of the correspondencedefinition part and the data definition part is combined to generateprogram.
 97. A data management method using a computer having a datastorage part storing plural data each of which has at least a data IDfor identifying each data, a class ID for identifying type of the dataand a data content ID for identifying data content, said data storagepart having a data ID storing region for storing the data ID, a class IDstoring region for storing the class ID and variable storing regions forstoring data content IDs, each of said variable storing regions beingidentified by variable name, said plural data having same format, acorrespondence definition part for storing correspondences between saideach variable name and each data item name, the correspondencedefinition part being provided for each class ID and a data definitionpart for storing data correspondences between said each data content IDand each data content, the data correspondence being provided for eachclass ID and each data item name, the method comprising the steps of:obtaining data having a given data ID from the data storage part,processing data, the data processing including identifying the data itemname corresponding to the variable name in reference to thecorrespondence recorded in said correspondence definition partidentified by the class ID of said obtained data and obtaining the datacontent corresponding to the data content ID of said obtained data inreference to the data correspondence recorded in said data definitionpart identified by said identified data item name of the variable name,thereby identifying the data item name and the data content of saidobtained data.
 98. The data management method according to claim 97,wherein the computer has definition storing part for each class ID, saiddefinition storing part having storing part for storing processingprogram for each processing name, wherein said correspondence definitionpart selectively stores the data item names which are used in theprocessing program, said correspondence definition part being providedfor said each processing name, wherein the computer processes the datain response to receive the processing name and the data ID, wherein thecomputer obtains the processing program corresponding to said givenprocessing name form the definition storing part corresponding to theclass ID of the data having the given data ID, identifies the data itemname used in said processing program in reference to the definitionstoring part corresponding to the given processing name of thedefinition storing part corresponding to the class ID of the data havingthe given data ID and obtaining the data content corresponding to thedata content ID of the obtained data based on said obtained data itemname in reference to the data definition part corresponding to saidgiven processing name of the definition storing part corresponding tothe class ID of the data having the given data ID thereby deciding thedata item name and the data content of the obtained data having saidgiven data ID, wherein the computer selectively obtains the data contentcorresponding to the data item name which is necessary to carry out saidobtained processing program of said given processing name from the datahaving the given data ID and carries out said obtained processingprogram using said obtained data content.